windows系统调用 调度优先级
标签:style class blog code java http
1 #include "iostream"
2 #include "windows.h"
3 using namespace std;
4
5 class CWorkerThread{
6 public:
7 CWorkerThread(LPCTSTR m_szName):m_szName(m_szName),m_hThread(INVALID_HANDLE_VALUE){
8 m_hThread=CreateThread(
9 NULL,
10 0,
11 ThreadProc,
12 reinterpret_cast(this),
13 0,
14 NULL
15 );
16 }
17
18 virtual ~CWorkerThread(){CloseHandle(m_hThread);}
19
20 virtual void WaitForCompletion(){
21 WaitForSingleObject(m_hThread,INFINITE);
22 }
23
24 virtual void SetPriority(int nPriority){
25 SetThreadPriority(m_hThread,nPriority);
26 }
27
28 virtual void Suspend(){
29 SuspendThread(m_hThread);
30 }
31
32 virtual void Resume(){
33 ResumeThread(m_hThread);
34 }
35
36 protected:
37 static DWORD WINAPI ThreadProc(LPVOID lpParam){
38 CWorkerThread *pThis=
39 reinterpret_cast(lpParam);
40
41 pThis->DoStuff();
42 return (0);
43 }
44
45 virtual void DoStuff(){
46 for(int n=0;n100;n++){
47 printf("Thread %s ID:%d,count %d\n",m_szName,GetCurrentThreadId(),n);
48 }
49 }
50
51 protected:
52 HANDLE m_hThread;
53 LPCTSTR m_szName;
54 };
55
56 void main(){
57
58 CWorkerThread wtB("B");
59 CWorkerThread wtA("A");
60 wtA.SetPriority(THREAD_PRIORITY_LOWEST);
61
62
63 wtA.WaitForCompletion();
64 wtB.WaitForCompletion();
65
66 cout"Both threads complete."endl;
67
68 getchar();
69 }
windows系统调用 调度优先级,搜素材,soscw.com
windows系统调用 调度优先级
标签:style class blog code java http
原文地址:http://www.cnblogs.com/593213556wuyubao/p/3784470.html
评论