线程同步------1.事件

摘要: 事件内核对象1.综述线程同步过程中,首先需要定义一个同步对象,同步对象一般具有两种状态:标志的,和非标志的。线程根据是否已经完成操作将同步对象设置为标志的和未标志的。而等待函数的功能是专门用于等待同步对象状态改变。一个线程调用等待函数后执行会暂停。直到同步对象的状态改变后,等待函数才会返回,线程才会继续执行。等待函数分为“单对象”等待函数和多对象等待函数。经常用到的同步对象包括,事件(Event),互斥(Mutex),信号量(Semaphore),可等待计时器(Waitabletimer)。一、事件对象事件对象就是上面所说的能够标志的对象。通过这个对象可以操作现成的执行顺序。事件的创建HAND 阅读全文
posted @ 2012-03-05 18:14 hatreds 阅读(250) 评论(0) 推荐(0) 编辑

wsprintf中的格式化信息

摘要: 1. 格式化规定符━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 符号 作用──────────────────────────────────────── %d 格式化为十进制有符号整数输出到缓冲区 %u 格式化为十进制无符号整数输出到缓冲区 %f 格式化为浮点数输出到缓冲区 %s 格式化为字符串输出到缓冲区 %c 格式化为单个字符输出到缓冲区 %e 格式化为指数形式的浮点数输出到缓冲区 %x 格式化为无符号以十六进制表示的整数(a-f小写输出)输出到缓冲区 %X 格式化为无符号以十六进制表示的整数(a-f大写输出)输出到缓冲区 %0 格式化为无符号以八进制 阅读全文
posted @ 2012-03-05 16:08 hatreds 阅读(652) 评论(0) 推荐(0) 编辑

键盘消息

摘要: 键盘谁获得了了焦点由于程序可能有多个窗体,问题如果如何判断哪一个窗体获取了键盘输入,这是回想MSG每一个时间所得到的信息中都会得到一个hwnd结构,(不多想线程队列事情只针对每一个hwnd)。然后由信息回圈函数DispatchMessage函数向视窗发送信息。每一个窗体的信息处理函数可以通过拦截WM_SETFOCUS 和 WM_KILLFOCUS 信息来判定它的视窗什么时候获得了焦点。WM_SETFOCUS指示正在得到输入焦点,WM_KILLFOUCS表示视窗正在失去输入焦点。序列和同步一般系统中应该存在一个缓存的消息队列,这个和每一个窗体的消息队列并不相同,对于每一个消息的传送,应该是先到系 阅读全文
posted @ 2012-01-10 22:38 hatreds 阅读(1518) 评论(0) 推荐(0) 编辑

文字输出

摘要: 字体显示章节宗旨:使用Windows 提供的功能来取得关於程式执行环境的资讯。1. WM_PAINT 消息大多数Windows 程式在WinMain 中进入讯息回圈之前的初始化期间都要呼叫函式UpdateWindow。Windows 利用这个机会给视窗讯息处理程式发送第一个WM_PAINT 讯息。这个讯息通知视窗讯息处理程式:必须绘制显示区域。此後,视窗讯息处理程式应在任何时刻都准备好处理其他WM_PAINT 讯息,必要的话,甚至重新绘制视窗的整个显示区域。在发生下面几种事件之一时,视窗讯息处理程式会接收到一个WM_PAINT 讯息:在使用者移动视窗或显示视窗时,视窗中先前被隐藏的区域重新可见 阅读全文
posted @ 2012-01-10 20:10 hatreds 阅读(226) 评论(0) 推荐(0) 编辑

windows 窗体建立过程

摘要: 一. 先要定义自己将要使用WNDCALSS 的基本样式。typedef struct tagWNDCLASS { UINT style; WNDPROC lpfnWndProc; int cbClsExtra; int cbWndExtra; HINSTANCE hInstance; HICON hIcon; HCURSOR hCursor; HBRUSH hbrBackground; LPCTSTR lpszMenuName; LPCTSTR lpszClassName;} WNDCLASS, *PWNDCLASS;参数按顺序解释UINT style : 字面意思可以设置我们将要建立窗体的的 阅读全文
posted @ 2012-01-10 10:54 hatreds 阅读(471) 评论(0) 推荐(0) 编辑

井底之蛙理解排序1(肯定需要修改)

摘要: 先按自己思路全部写完,不用太过于急躁,出现一个问题,解决一个问题。碰到的问题,1 快速排序的优化问题。中间提到。后面还有稳定性考虑,这点考虑的不是太多。开始那三个排序快速:每一次partition讲一个元素放入它应该在的位置。然后需要考虑的就是如何对于给定的数组中每一个元素都遍历到的问题。最自然的想法,循环,但是在partition的过程中元素师变动的,可能导致有的元素被挪动多次,有的元素不能放到应有的位置。这样就牵扯到一个问题,需要对一个变动的数组进行遍历。然后就想到分治。每一次将一个元素排完序,然后对它前后两个组合进行此种操作就可以,然后很自然的思路就到了前面所说的二重递归的思路上。将数组 阅读全文
posted @ 2012-01-09 22:12 hatreds 阅读(219) 评论(0) 推荐(0) 编辑

递归的理解1

摘要: 为了排序算法先回忆一下递归 阅读全文
posted @ 2012-01-09 13:25 hatreds 阅读(1028) 评论(0) 推荐(0) 编辑