原文出处:http://www.cnblogs.com/lidabo/p/3328402.html本文给出了一个通用的线程池框架,该框架将与线程执行相关的任务进行了高层次的抽象,使之与具体的执行任务无关。另外该线程池具有动态伸缩性,它能根据执行任务的轻重自动调整线程池中线程的数量。文章的最后,我们给出一个简单示例程序,通过该示例程序,我们会发现,通过该线程池框架执行多线程任务是多么的简单。为什么需
MFC下利用TRACE语句可以很方便的打印调试信息,但是有些时候如果要打印另外的信息,为了分析数据的方便,不想与TRACE的信息混在一起。这个时候,利用控制台输出就是一个比较不错的捷径。虽然有很多局限性,比如,只能开一个控制台等等,但是,这个方法还是比较有吸引力,因为其使用就如同控制台程序一样,比读写文件少一个文件指针。使用方法如下,具体请参考MSDN。 &nb
默认情况下,窗口是不响应WM_MOUSELEAVE和WM_MOUSEHOVER消息的,所以要使用_TrackMouseEvent函数来激活这两个消息。调用这个函数后,当鼠标在指定窗口上停留超过一定时间或离开窗口后,该函数会Post这两个消息到指定窗口。使用方法:1.在对话框类中定义一个变量来标识是否追踪当前鼠标状态,之所以要这样定义是要避免鼠标已经在窗体之上时,一移动鼠标就不断重复产生WM_MOU
1.CDC *pDC和HDC hdc有什么不同,类似的有CWnd *pWnd和HWnd?pDC是类指针HDC是windows句柄通过pDC获得hdc:HDC hdc=pDC->GetSafeHdc();通过hdc获得pDC:CDC *pDC=new CDC;pDC->Attach(hdc);2.hDC和CDC有本质区别HDC是WINDOWS的一种数据类型,是设备描述句柄。而CDC是MF
想获得进程可执行文件的路径最常用的方法是通过GetModuleFileNameEx函数获得可执行文件的模块路径这个函数从Windows NT 4.0开始到现在的Vista系统都能使用,向后兼容性比较好。第二种方法是GetProcessImageFileName函数,这个函数在Windows XP及其以后的系统中都能使用,使用此函数返回的路径不是通常的系统盘符,如"C:\...",而是驱动层的表示方
一、控件的介绍MFC中封装了许多有用的类,CTabCtrl和CPropertySheet是其中两个比较常用的类型。CTabCtrl即Tab控件对应的类,Windows应用程序中大量使用了Tab控件。属性页对应的是CPropertySheet,你在桌面上右键鼠标弹出的显示对话框就是一个CPropertySheet类型的对象。事实上这类弹出的、类似“属性页”的窗口大部分都是CPropertySheet
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号