AfxBeginThread创建线程并指定优先级 afxbeginthread头文件

AfxBeginThread创建线程并指定优先级 afxbeginthread头文件

AfxBeginThread

CWinThread*AfxBeginThread( AFX_THREADPROC pfnThreadProc, LPVOIDpParam, int nPriority = THREAD_PRIORITY_NORMAL, UINTnStackSize = 0, DWORD dwCreateFlags = 0,LPSECURITY_ATTRIBUTES lpSecurityAttrs = NULL );

CWinThread*AfxBeginThread( CRuntimeClass* pThreadClass, intnPriority = THREAD_PRIORITY_NORMAL, UINT nStackSize =0, DWORD dwCreateFlags = 0, LPSECURITY_ATTRIBUTESlpSecurityAttrs = NULL );

CWinThread *m_pThread =AfxBeginThread(ThreadTest,0,THREAD_PRIORITY_HIGHEST,0,NULL);//调用测试线程

当线程弹出一个对话框再做相关操作时有可能会卡死的情况,这时我们可以在创建线程时调整一个线程的优先级,或者使用SetThreadPriority指定优先级。

BOOL SetThreadPriority(HANDLE hThread, // handle to the threadint nPriority // thread priority level);功能说明设置指定线程的优先级参数说明

线程优先级等级标志优先级值
1idle (最低)THREAD_PRIORITY_IDLE如果进程优先级为realtime则调整为16,其它情况为1
2LOWEST 低THREAD_PRIORITY_LOWEST-2(在原有基础上-2)
3BELOW 低于标准THREAD_PRIORITY_BELOW_NORMAL-1(在原有基础上-1)
4NORMAL(标准)THREAD_PRIORITY_NORMAL不变(取进程优先级值)
5ABOVE 高于标准THREAD_PRIORITY_ABOVE_NORMAL+1(在原有基础上+1)
6HIGHEST (高)THREAD_PRIORITY_HIGHEST+2(在原有基础上+2)
7CRITICAL(最高)THREAD_PRIORITY_TIME_CRITICAL如果进程优先级为realtime则调整为31,其它情况为15

  

爱华网本文地址 » http://www.413yy.cn/a/25101010/37730.html

更多阅读

串口线与并口线的区别 串口并口区别

串口线与并口线的区别——简介我们经常碰到串口线或者并口线,究竟他们有什么区别呢?串口线与并口线的区别——工具/原料串口线,并口线串口线与并口线的区别——方法/步骤串口线与并口线的区

MFC多线程CWinThread的使用方法转 cwinthread run

CWinThread的使用方法CWinThread类成员数据成员 m_bAutoDelete 指定线程结束时是否要销毁对象 m_hThread 当前线程的句柄 m_nThreadID 当前线程的ID m_pMainWnd 保存指向应用程序的主窗口的指针 m_pActiveWnd 指向容器应用程序的主

线程中的悲观锁和乐观锁 java中乐观锁和悲观锁

线程中的锁可以分为乐观锁和悲观锁,这两个都是实现锁机制的两种办法。悲观锁:根据字面意思,悲观,就是不是太好的。当一个线程访问这个数据的时候,悲观锁会把这个数据给锁住,不被其他线程所访问,直到这个线程完成了对数据的提交后,其他线程

多线程的使用(Delphi) delphi多线程实例

TThread在Classes单元中声明,直接从TObject继承下来的,因为,它不是组件.TThread是个抽象类,所以不能创建TThread的实例,而只能创建其派生类的实例.利用TThread类来编写多线程应用程序的一般步骤如下:[步骤一]从TThread类派生出一个

声明:《AfxBeginThread创建线程并指定优先级 afxbeginthread头文件》为网友夏忆年华丶分享!如侵犯到您的合法权益请联系我们删除