摘要:
今天仿书上做的一个监控内存的小软件:界面如下:主要代码:void CYx_MemoryView::OnDraw(CDC* pDC){CYx_MemoryDoc* pDoc = GetDocument();ASSERT_VALID(pDoc);CString str;double dFree =0 , dUse = 0;int x = 0,y = 0 ;CRect rect;CPen Pen;CBrush Brush;Brush.CreateSolidBrush(RGB(255,0,0)); //画内部Pen.CreatePen(PS_SOLID,100,RGB(255,0,0));//画边框p 阅读全文
摘要:
管理事件内核对象 在前面讲述线程通信时曾使用过事件内核对象来进行线程间的通信,除此之外,事件内核对象也可以通过通知操作的方式来保持线程的同步。对于前面那段使用临界区保持线程同步的代码可用事件对象的线程同步方法改写如下: // 事件句柄HANDLE hEvent = NULL;// 共享资源 char g_cArray[10];……UINT ThreadProc12(LPVOID pParam){ // 等待事件置位 WaitForSingleObject(hEvent, INFINITE); // 对共享资源进行写入操作 for (int i =... 阅读全文
摘要:
管理事件内核对象 在前面讲述线程通信时曾使用过事件内核对象来进行线程间的通信,除此之外,事件内核对象也可以通过通知操作的方式来保持线程的同步。对于前面那段使用临界区保持线程同步的代码可用事件对象的线程同步方法改写如下: // 事件句柄HANDLE hEvent = NULL;// 共享资源 char g_cArray[10];……UINT ThreadProc12(LPVOID pParam){ // 等待事件置位 WaitForSingleObject(hEvent, INFINITE); // 对共享资源进行写入操作 for (int i =... 阅读全文
摘要:
管理事件内核对象 在前面讲述线程通信时曾使用过事件内核对象来进行线程间的通信,除此之外,事件内核对象也可以通过通知操作的方式来保持线程的同步。对于前面那段使用临界区保持线程同步的代码可用事件对象的线程同步方法改写如下: // 事件句柄HANDLE hEvent = NULL;// 共享资源 char g_cArray[10];……UINT ThreadProc12(LPVOID pParam){ // 等待事件置位 WaitForSingleObject(hEvent, INFINITE); // 对共享资源进行写入操作 for (int i =... 阅读全文