多线程处理:创建用户界面线程
来源:互联网 发布:苹果win7装回mac系统 编辑:程序博客网 时间:2024/05/21 10:04
版本:Visual Studio 2005
用户界面线程通常用于处理用户输入和响应用户事件,这些行为独立于执行该应用程序其他部分的线程。已经创建并启动主应用程序线程(在 CWinApp 导出的类中提供)。本文描述创建其他用户界面线程所需的步骤。
创建用户界面线程时,必须首先从 CWinThread 派生类。必须使用 DECLARE_DYNCREATE 和 IMPLEMENT_DYNCREATE 宏声明并实现此类。此类必须重写某些函数,也可以重写其他函数。下表列出了这些函数及其用途。
ExitInstance
线程终止时执行清除。通常重写。
InitInstance
执行线程实例初始化。必须重写。
OnIdle
执行线程特定的闲置时间处理。通常不重写。
PreTranslateMessage
将消息调度到 TranslateMessage 和 DispatchMessage 之前对其进行筛选。通常不重写。
ProcessWndProcException
截获由线程的消息和命令处理程序引发的未处理异常。通常不重写。
Run
控制线程的函数。包含消息泵。一般不重写。
MFC 通过参数重载提供两个版本的 AfxBeginThread:一个用于用户界面线程,另一个用于辅助线程。若要启动用户界面线程,请调用 AfxBeginThread,提供下列信息:
从 CWinThread 派生的类的 RUNTIME_CLASS。
(可选)所需的优先级级别。默认值为正常优先级。有关可用的优先级级别的更多信息,请参见 Platform SDK 中的 SetThreadPriority。
(可选)所需的线程堆栈大小。默认值与创建线程的堆栈大小相同。
(可选)CREATE_SUSPENDED,如果希望在挂起状态中创建线程。默认值为 0,即正常启动线程。
(可选)所需的安全属性。默认值与父线程具有相同的访问权。有关此安全信息格式的更多信息,请参见 Platform SDK 中的 SECURITY_ATTRIBUTES。
AfxBeginThread 为您完成大部分工作。它创建类的新对象、使用您提供的信息初始化该对象并调用 CWinThread::CreateThread 开始执行线程。在整个过程中进行检查,确保假如创建过程的任何部分出现故障,所有对象都能被正确地解除分配。
- 多线程处理:创建用户界面线程
- 多线程-----创建用户界面线程
- MFC 多线程 用户界面线程创建
- 工作线程与用户界面线程|多线程之创建工作者线程和用户界面线程区别
- 多线程之创建工作者线程和用户界面线程区别
- 多线程之创建工作者线程和用户界面线程区别
- 多线程之创建工作者线程和用户界面线程区别
- MFC多线程的创建,包括工作线程和用户界面线程
- MFC多线程的创建,包括工作线程和用户界面线程
- MFC多线程的创建,包括工作线程和用户界面线程
- MFC多线程的创建,包括工作线程和用户界面线程
- MFC多线程的创建,包括工作线程和用户界面线程
- MFC多线程的创建,包括工作线程和用户界面线程
- MFC多线程的创建,包括工作线程和用户界面线程
- MFC多线程的创建,包括工作线程和用户界面线程
- MFC多线程的创建,包括工作线程和用户界面线程
- 创建用户界面线程
- 创建用户界面线程
- 浮点数的比较问题,不能直接比较,需用精度
- AGG 渲染器(Renderers)
- ANDROID命令详解
- 数字钟程序
- awk 函数 实现数字转换为ip
- 多线程处理:创建用户界面线程
- SourceInsight使用技巧
- .net同时Eval两个数值方法
- AGG 渲染缓存(Rendering Buffer)
- AGG 线段生成器(Span Generator)
- 毕业后五年拉开差距的原因
- 我的右键“设为桌面背景”按键没了,就用 regsvr32 shimgvw.dll 一条指令搞定了
- 全自动Ubuntu批量安装
- AGG 插值器(Interpolator)