锘??xml version="1.0" encoding="utf-8" standalone="yes"?>久久影院午夜理论片无码,久久久久久综合一区中文字幕,久久久这里有精品http://m.shnenglu.com/bujiwu/category/11802.htmlzh-cnTue, 15 Sep 2009 15:04:33 GMTTue, 15 Sep 2009 15:04:33 GMT60- 綆鍗曠嚎紼嬪熀綾?/title>http://m.shnenglu.com/bujiwu/archive/2009/09/15/CreateThread.htmlbujiwubujiwuTue, 15 Sep 2009 13:37:00 GMThttp://m.shnenglu.com/bujiwu/archive/2009/09/15/CreateThread.htmlhttp://m.shnenglu.com/bujiwu/comments/96343.htmlhttp://m.shnenglu.com/bujiwu/archive/2009/09/15/CreateThread.html#Feedback0http://m.shnenglu.com/bujiwu/comments/commentRss/96343.htmlhttp://m.shnenglu.com/bujiwu/services/trackbacks/96343.htmlhttp://blog.csdn.net/wei801004/archive/2006/05/18/744341.aspx
http://blog.csdn.net/SeaWave/archive/2006/05/20/746399.aspx
1 #include <iostream>
2 #include <Windows.h>
3 #include <process.h>
4 #include <conio.h>
5
6 using namespace std;
7
8 class CThread
9 {
10 public:
11 CThread(void)
12 {
13 m_running = true;
14 }
15
16 virtual ~CThread(void)
17 {
18 }
19
20 void StartThread(void);
21 void StopThread(void);
22
23 void WaitForEnd(DWORD dwTimeOut = INFINITE);
24
25 virtual DWORD WINAPI ThreadWorkItem(LPVOID lpParameter) = 0;
26
27 private:
28 static DWORD WINAPI ThreadFun(LPVOID lpParameter);
29
30 protected:
31 bool m_running;
32
33 private:
34 HANDLE m_hThread;
35 };
36
37 inline void CThread::StartThread(void)
38 {
39 m_hThread = CreateThread(NULL, 0, ThreadFun, this, 0, 0);
40
41 if (m_hThread == NULL)
42 {
43 throw exception("Error: Start thread!");
44 }
45
46 CloseHandle(m_hThread);
47
48 return;
49 }
50
51 inline void CThread::WaitForEnd(DWORD dwTimeOut /* = INFINITE */)
52 {
53 DWORD dwRet = WaitForSingleObject(m_hThread, dwTimeOut);
54
55 if (dwRet == WAIT_OBJECT_0)
56 {
57 CloseHandle(m_hThread);
58 m_hThread = NULL;
59 }
60 else if (dwRet == WAIT_TIMEOUT)
61 {
62 throw exception("Error: Time out!");
63 }
64
65 return;
66 }
67
68 inline void CThread::StopThread()
69 {
70 m_running = false;
71 }
72
73 inline DWORD WINAPI CThread::ThreadFun(LPVOID lpParameter)
74 {
75 CThread *pThread = reinterpret_cast<CThread*> (lpParameter);
76 pThread->ThreadWorkItem(lpParameter);
77
78 return 0;
79 }
80
81 class SubThread : public CThread
82 {
83 public:
84 SubThread(int Num)
85 {
86 Start = Num;
87 }
88
89 DWORD WINAPI ThreadWorkItem(LPVOID lpParameter)
90 {
91 while ( m_running )
92 {
93 cout << "綰跨▼鎵ц鐨勬搷浣淸" << Start++ << "]" <<endl;
94 Sleep(1000);
95 }
96
97 ExitThread(0);
98
99 return 0;
100 }
101
102 private:
103 int Start;
104 };
105
106 int main(int argc, char* argv[])
107 {
108 SubThread MyThead(1);
109
110 cout << "To exit this server, hit a key at any time on this console
" <<endl;
111
112 MyThead.StartThread();
113 //MyThead.WaitForEnd();
114
115 while(!_kbhit())
116 {
117 Sleep(0);
118 }
119
120 MyThead.StopThread();
121
122 return 0;
123 }
124
http://m.shnenglu.com/Files/bujiwu/CThread.rar

]]>
亚洲综合日韩久久成人AV|
欧美成a人片免费看久久|
色综合久久久久久久久五月|
久久精品久久久久观看99水蜜桃|
亚洲AV无码久久精品狠狠爱浪潮|
97久久久久人妻精品专区|
久久99精品免费一区二区|
欧美精品久久久久久久自慰|
久久亚洲国产欧洲精品一|
亚洲国产综合久久天堂|
国产成人精品久久一区二区三区|
亚洲欧洲精品成人久久曰影片
|
久久久久亚洲AV成人网人人网站|
久久人做人爽一区二区三区|
久久99热狠狠色精品一区|
久久精品人人做人人爽电影|
精品国产综合区久久久久久|
久久久久99精品成人片直播|
四虎国产精品成人免费久久|
久久久综合九色合综国产|
99精品久久精品一区二区|
思思久久99热只有频精品66|
国产精品免费看久久久香蕉|
久久96国产精品久久久|
久久天天躁狠狠躁夜夜躁2O2O|
亚洲一区精品伊人久久伊人|
欧美成a人片免费看久久|
精品免费久久久久国产一区|
精品久久香蕉国产线看观看亚洲|
2021国产精品午夜久久|
蜜臀久久99精品久久久久久|
久久久久无码国产精品不卡|
99久久无码一区人妻|
蜜桃麻豆www久久|
久久久久久久尹人综合网亚洲|
久久国产精品成人片免费|
久久婷婷五月综合色高清
|
久久成人影院精品777|
WWW婷婷AV久久久影片|
国产精品一区二区久久不卡|
97超级碰碰碰久久久久|