- -。(583214826) 12:07:52
誰能給我講一下vc++多線程,幾分鐘就搞定
- -。(583214826) 12:08:06
誰能給我講一下vc++多線程,幾分鐘就搞定, 多謝大神們,真的很急
misora<chriscross@qq.com> 12:08:41
這個太廣泛了。。
- -。(583214826) 12:09:03
創建一個線程,可以隨時啟用,就ok了
- -。(583214826) 12:10:06
親們,幫幫我吧
misora<chriscross@qq.com> 12:10:24
_beginthreadex
- -。(583214826) 12:10:41
有沒有比較完整一些的代碼
misora<chriscross@qq.com> 12:10:46
沒有
- -。(583214826) 12:10:59
_begininthreadex是個方法?
misora<chriscross@qq.com> 12:11:10
就是開始一個線程
- -。(583214826) 12:11:46
哦
杯水車薪(1729751029) 12:18:11
無線上網卡 和 無線網卡是2種不同的東東. 現在都亂套了
- -。(583214826) 12:18:36
...
上海-千層(670825328) 12:19:17

?????????????????還有這樣提需求的?
如果有人說:誰給我一套房,200元搞定,這個可笑吧
杯水車薪(1729751029) 12:19:31
d}%[_ajg`@apb.gif)
上海-千層(670825328) 12:20:45
需求定了,時間成本就已被決定了.
泥翹(694820778) 12:22:49
什么東西都等著別人給你來講
杯水車薪(1729751029) 12:23:16

泥翹(694820778) 12:23:45
- -。(583214826) 12:28:02
]hwgbpti@5d.jpg)
- -。(583214826) 12:28:13
時間跟錢不一樣好嗎
杯水車薪(1729751029) 12:30:35
不是吧,昨天老師還說時間就是金錢
- -。(583214826) 12:30:49
好吧隨便吧
杯水車薪(1729751029) 12:31:04
要么可能今天不是了
杯水車薪(1729751029) 12:32:23
不過,我學多線程學了一周才會用好.好久以后才明白怎么才能不讓程序崩潰
- -。(583214826) 12:33:47
很多語言的線程我都學過,唯獨vc++不會,其實5行代碼就可以解決運行一個線程,關鍵我不會寫啊,求高人指點。
武漢-Error<errorcpp@qq.com> 12:34:40
- -。(583214826) 12:33:47
很多語言的線程我都學過,唯獨vc++不會,其實5行代碼就可以解決運行一個線程,關鍵我不會寫啊,求高人指點。
就憑你這句話
武漢-Error<errorcpp@qq.com> 12:34:44
沒必要在這里問
- -。(583214826) 12:34:57
...
- -。(583214826) 12:35:06
我就是問一下,還引起公憤了
- -。(583214826) 12:35:07
- -
- -。(583214826) 12:35:12
求高人指點
武漢-Error<errorcpp@qq.com> 12:35:15
5分鐘夠你在msdn找到api了
- -。(583214826) 12:35:49
有高手給寫個簡單易懂的豈不是更好
杯水車薪(1729751029) 12:36:53
貌似msdn也是高手所寫,msdn中也有簡單易懂的例子
- -。(583214826) 12:37:09
那你們去找吧。
- -。(583214826) 12:37:13
求高人指點
杯水車薪(1729751029) 12:37:24
不過,用VC的多線程和其它語言的是很大不同地。
- -。(583214826) 12:37:32
嗯,明白
武漢-Error<errorcpp@qq.com> 12:37:37
哥給你找個,估計你不會用
唉,,,
- -。(583214826) 12:37:48
那你給我找個吧,麻煩你了
杯水車薪(1729751029) 12:37:49
其它語言地學會了,到了VC這里,仍然等于初學者
上海-千層(670825328) 12:39:07
根據我的分析,這里分2類人,一類的不會的,在此忽悠人。
另一類的學會了,當初學得很費力,所以今天看到另一個
不會的,只感到高興
武漢-Error<errorcpp@qq.com> 12:39:28
不是,他問問題的態度 我很難接受
- -。(583214826) 12:39:34
還有一類,就是吃飽了沒事干在這評論問題的
上海-千層(670825328) 12:39:38
唉。一切的罪都在多線程太難。不能怪任何人
武漢-Error<errorcpp@qq.com> 12:39:52
用boost::thead
- -。(583214826) 12:40:03
我的態度沒那么不好吧? - -
上海-千層(670825328) 12:40:39

向他推薦用boost的,看來屬于第4類了。
武漢-Error<errorcpp@qq.com> 12:41:12
裝逼的
上海-千層(670825328) 12:41:14
唉。只能說,咱群雖小,品種卻多。
- -。(583214826) 12:41:29

你是不是大姨媽來了?
- -。(583214826) 12:41:50
你要真覺著沒事干可以去看看書什么的
- -。(583214826) 12:41:57
知識是無邊的。你怎么也學不完
上海-千層(670825328) 12:42:08
你是不是沒錢去按摩啊
武漢-Error<errorcpp@qq.com> 12:42:12
問問題的還是少評論,,,
上海-千層(670825328) 12:42:17
這么興奮
- -。(583214826) 12:42:28
我不興奮,看你吃太多了,我關心一下
上海-千層(670825328) 12:43:12
只是娛樂一下罷了。你還有啥不開心的,也說說讓咱開心一下
武漢-Error<errorcpp@qq.com> 12:43:33
這小伙應該不是C系程序員
杯水車薪(1729751029) 12:43:33

- -。(583214826) 12:43:40
我跟你那誰有一腿了。不好意思
- -。(583214826) 12:43:46
我不是學c++的
杯水車薪(1729751029) 12:44:17
不是啊
杯水車薪(1729751029) 12:44:31
來錯群了。怪不得成了娛樂。
- -。(583214826) 12:45:10
哦,你們很不喜歡不會c++的人啊
- -。(583214826) 12:45:16
好吧
杯水車薪(1729751029) 12:45:20
喜歡
杯水車薪(1729751029) 12:45:48
C++的人很少娛樂的。
武漢-Error<errorcpp@qq.com> 12:46:13
相對還是很open的
上海-千層(670825328) 12:46:14
6K)L)]~VIZK.gif)
上海-千層(670825328) 12:47:04
看把他急的,這一腿那一腿都說出來了。快崩潰了。
看來他本身就不是多線程的。
武漢-Error<errorcpp@qq.com> 12:47:19
#include <iostream>
using namespace std;
#include <boost/thread.hpp>
void TestFunc()
{
cout << __FUNCTION__ << endl;
}
int _tmain(int argc, _TCHAR* argv[])
{
boost::thread threadTest(&TestFunc);
threadTest.join();
getchar();
return 0;
}
武漢-Error<errorcpp@qq.com> 12:47:25
沒編譯
杯水車薪(1729751029) 12:47:23

武漢-Error<errorcpp@qq.com> 12:47:31
不過應該沒問題的
- -。(583214826) 12:47:36
謝謝高手,比某人強很多
武漢-Error<errorcpp@qq.com> 12:47:43
我是水貨
武漢-Error<errorcpp@qq.com> 12:47:51
高手不會回答這么簡單的問題的
武漢-Error<errorcpp@qq.com> 12:47:55
尤其你這種態度
武漢-Error<errorcpp@qq.com> 12:48:04
我敢說 在C++群 絕對混不開
武漢-Error<errorcpp@qq.com> 12:48:18
除非你在其他方面很牛
- -。(583214826) 12:48:52
我態度也沒怎么不好啊,我只是解釋一下我能很快接受高手給講得東西罷了
- -。(583214826) 12:49:09
要不然你看看聊天記錄- -
杯水車薪(1729751029) 12:49:09
武漢-Error,這樣答題,什么也不會解決。他仍然不會,相信boost是需要安裝的,所以他也用不成
- -。(583214826) 12:49:28
我試試吧,不行再解決
游戲開發者(2528395832) 12:49:34
推薦你找好工作 只要你上CG游戲人才網:http://www.cggamejob.com注冊個人會員, 就能幫你實現就業 最新職位招聘::3D角色 場景 特效 動作 影視動畫 美術 程序、策劃、數值 市場 運營等.
武漢-Error<errorcpp@qq.com> 12:49:42
- -。(583214826) 12:48:52
我態度也沒怎么不好啊,我只是解釋一下我能很快接受高手給講得東西罷了
C++er 從來不信速成
杯水車薪(1729751029) 12:49:41
他還得再提問
武漢-Error<errorcpp@qq.com> 12:50:11
合格的C++er 都是被編譯器摧殘蹂躪出來的
- -。(583214826) 12:50:14
就算我信了速成也不能說我態度不好吧 - -,我很誠懇艾。。
武漢-Error<errorcpp@qq.com> 12:50:23
誠懇個屁
杯水車薪(1729751029) 12:50:24
你開了頭,要是不幫他完全解決,反可能成為不耐心的人。
- -。(583214826) 12:50:36
...
- -。(583214826) 12:50:37
好吧
武漢-Error<errorcpp@qq.com> 12:50:49
囧,,,
- -。(583214826) 12:50:57
小弟認錯了
武漢-Error<errorcpp@qq.com> 12:51:10
error PRJ0003 : Error spawning 'cmd.exe'.
武漢-Error<errorcpp@qq.com> 12:51:13
誰遇到過
- -。(583214826) 12:52:02
問個問題真困難
- -。(583214826) 12:52:03
唉
杯水車薪(1729751029) 12:52:37
可能原因恰在于你問了一個過于簡單的問題
武漢-Error<errorcpp@qq.com> 12:52:52
太抽象了
- -。(583214826) 12:53:08
果然出問題了
- -。(583214826) 12:53:21

- -。(583214826) 12:53:31
這是要添加外部文件吧?
杯水車薪(1729751029) 12:53:45
好,武漢人,可以繼續了。
- -。(583214826) 12:53:54
....
武漢-Error<errorcpp@qq.com> 12:54:24
QN1UH78VKP2T7)IA]ZM(FW.gif)
- -。(583214826) 12:54:36
不對
- -。(583214826) 12:54:47
是這樣
上海-千層(670825328) 12:54:51
用了boost你就掉進了無底洞。
現在相信關于第4類人的理論了吧。
- -。(583214826) 12:55:09
我的程序要在標準win32平臺下運行,不能帶其他的類庫
武漢-Error<errorcpp@qq.com> 12:55:12
聲明下,,,偶今天是裝逼來的,,,
武漢-Error<errorcpp@qq.com> 12:55:30
主要是不用boost 太麻煩了,要寫好多代碼
- -。(583214826) 12:55:33
....
杯水車薪(1729751029) 12:55:26
d}%[_ajg`@apb.gif)
- -。(583214826) 12:55:42
createThread這個就行了吧
武漢-Error<errorcpp@qq.com> 12:55:59
- -。(583214826) 12:55:42
createThread這個就行了吧
簡單的給你代碼 是害你,,,
- -。(583214826) 12:56:05
明白
武漢-Error<errorcpp@qq.com> 12:56:06
很多東西要注意的
武漢-Error<errorcpp@qq.com> 12:56:25
__beginthread
武漢-Error<errorcpp@qq.com> 12:56:27
用這個
武漢-Error<errorcpp@qq.com> 12:56:31
理由不解釋
- -。(583214826) 12:56:37
我查查
杯水車薪(1729751029) 12:57:08
用哪個函數他能不知道?一共就2個函數。msdn中推薦一個。
武漢-Error<errorcpp@qq.com> 12:57:20
上海-千層(670825328) 12:54:51
用了boost你就掉進了無底洞。
現在相信關于第4類人的理論了吧。
千同學展開來說說
武漢-Error<errorcpp@qq.com> 12:57:27
還有一會才上班呢
上海-千層(670825328) 12:57:37
真正的困難還沒看出來?困難在于要幾分鐘之內。
杯水車薪(1729751029) 12:57:49
6K)L)]~VIZK.gif)
- -。(583214826) 12:58:01
呵呵,可惜沒人能帶著我搞一下
- -。(583214826) 12:58:07
自己搞當然要花時間了
武漢-Error<errorcpp@qq.com> 12:58:08
QN1UH78VKP2T7)IA]ZM(FW.gif)
我不用boost 也要去查函數,然后填api
上海-千層(670825328) 12:58:08
線程能有多少函數啊?
- -。(583214826) 12:58:09
親
杯水車薪(1729751029) 12:58:48
至此,武漢人是唯一回答過的人,請繼續吧
上海-千層(670825328) 12:59:39
別人花時間搞成功的,適用于所有情況的,恐怕只有boost了。
上海-千層(670825328) 13:00:01
好東東怕你吞不下去啊.
武漢-Error<errorcpp@qq.com> 13:00:04
我不是武漢人
武漢-Error<errorcpp@qq.com> 13:00:22
好吧
武漢-Error<errorcpp@qq.com> 13:00:25
第二版 給你
武漢-Error<errorcpp@qq.com> 13:00:27
#include <iostream>
using namespace std;
#include <boost/thread.hpp>
#include <Windows.h>
#include <process.h>
void TestFunc()
{
cout << __FUNCTION__ << endl;
}
void TestFuncWin( void *ch )
{
cout << __FUNCTION__ << endl;
}
int _tmain(int argc, _TCHAR* argv[])
{
boost::thread threadTest(&TestFunc);
threadTest.join();
_beginthread( &TestFuncWin, 0, NULL );
getchar();
return 0;
}
武漢-Error<errorcpp@qq.com> 13:00:45
不過你要是這么用了,技術經理會懷疑你的能力
- -。(583214826) 13:01:44

上海-千層(670825328) 13:02:09
你都改用api了,那這個例子就別用boost了。他電腦里沒這個。
武漢-Error<errorcpp@qq.com> 13:02:19
這是我編譯通過的代碼,,,
你怎么跟研究生一樣麻煩
- -。(583214826) 13:02:27
.....
武漢-Error<errorcpp@qq.com> 13:02:45
把 boost的東西 干掉
武漢-Error<errorcpp@qq.com> 13:02:50
剩下的就是你要的
- -。(583214826) 13:02:58
行了
- -。(583214826) 13:03:00
我沒用boost
- -。(583214826) 13:03:09
thanks
上海-千層(670825328) 13:03:20
在函數前加修飾字 “WINAPI”
武漢-Error<errorcpp@qq.com> 13:03:32
F{0XCAB)LKNIT0K@G.gif)
裝逼成功
- -。(583214826) 13:03:35
.....
武漢-Error<errorcpp@qq.com> 13:03:46
其實學C++的人都很熱情
武漢-Error<errorcpp@qq.com> 13:03:59
只是恨牛不成逼啊
- -。(583214826) 13:04:01
主線程的函數還是開啟線程要執行的函數
上海-千層(670825328) 13:04:01
個個都像是剛來大姨媽一樣
武漢-Error<errorcpp@qq.com> 13:04:32
#include <iostream>
using namespace std;
#include <Windows.h>
#include <process.h>
void TestFuncWin( void *ch )
{
cout << __FUNCTION__ << endl;
}
int _tmain(int argc, _TCHAR* argv[])
{
_beginthread( &TestFuncWin, 0, NULL );
getchar();
return 0;
}
武漢-Error<errorcpp@qq.com> 13:04:36
這樣就不會錯了
武漢-Error<errorcpp@qq.com> 13:04:38
o(︶︿︶)o 唉,,,
- -。(583214826) 13:05:42
好了,成功了
武漢-Error<errorcpp@qq.com> 13:05:58
午休時間都快過了,,,
- -。(583214826) 13:06:02

- -。(583214826) 13:06:38
好吧,被罵的很爽,不過問題解決了
- -。(583214826) 13:06:42
謝謝諸位大神啦
上海-千層(670825328) 13:06:59
呵呵,不是成功了
而是失敗剛開始
- -。(583214826) 13:07:18
失敗了就debug
- -。(583214826) 13:07:26
為debug奮斗一輩子- -
武漢-Error<errorcpp@qq.com> 13:07:30
上海-千層(670825328) 13:06:59
呵呵,不是成功了
而是失敗剛開始
正解
武漢-Error<errorcpp@qq.com> 13:07:48
多線程的還真得 debug一輩子
杯水車薪(1729751029) 13:07:50
不是太可能吧。多線程可以認為就是一條不歸路。用了就是找死。
杯水車薪(1729751029) 13:08:00
debug沒用
- -。(583214826) 13:08:03
那個
- -。(583214826) 13:08:14
這線程不會要手動銷毀吧- -?
武漢-Error<errorcpp@qq.com> 13:08:17
也別太絕對嘛
武漢-Error<errorcpp@qq.com> 13:08:28
自然return就可以
武漢-Error<errorcpp@qq.com> 13:08:38
不要問其他的了
武漢-Error<errorcpp@qq.com> 13:08:46
將一個月都講不完
- -。(583214826) 13:08:50
...
- -。(583214826) 13:09:04

- -。(583214826) 13:09:09
返回的線程句柄嘛
上海-千層(670825328) 13:09:07

這不對。
windows下線程會占用一個handle,必須close
- -。(583214826) 13:09:14
不銷毀怎么辦?
上海-千層(670825328) 13:10:06
handle是系統級別的資源。不close將會時間長占完了以后系統死機
- -。(583214826) 13:10:10
銷毀線程的函數叫什么來著
武漢-Error<errorcpp@qq.com> 13:10:16
這個我真沒注意
上海-千層(670825328) 13:10:55
一般不要銷毀線程。否則線程不會執行棧展開行為,將會內存泄漏
- -。(583214826) 13:11:31
線程用完才銷毀
上海-千層(670825328) 13:11:47
不是,不要銷毀。要讓線程自己結束
- -。(583214826) 13:11:56
應該有個什么函數,用來接收

傳回來的參數
杯水車薪(1729751029) 13:12:12
歡迎你來到多線程的失敗之路。
- -。(583214826) 13:12:42
那線程指定的回調方法執行完了不就自己就結束了嗎
- -。(583214826) 13:12:53
好吧,那就不用擦屁股了
上海-千層(670825328) 13:13:10
應該,這個想法沒錯。可線程傳回來之前你創建的線程可能就已經結束了,你要考慮和設計
上海-千層(670825328) 13:13:36
這個handle也要close
- -。(583214826) 13:13:54
我沒找到什么 distoryThread之類的函數
杯水車薪(1729751029) 13:13:58
算了,先用著吧。等死機了再debug
- -。(583214826) 13:14:21
TerminateThread(thread1, 0);
CloseHandle(thread1);
- -。(583214826) 13:14:25
是不是這兩個
武漢-Error<errorcpp@qq.com> 13:14:34
千城
上海-千層(670825328) 13:14:43
多線程你想debug????????把大姨媽調出來了也調不出問題在哪
武漢-Error<errorcpp@qq.com> 13:14:48
你說的是 CreateThread 之后必須要 closeHandle把
武漢-Error<errorcpp@qq.com> 13:14:57
我記得用_beginthread是不需要的啊?
武漢-Error<errorcpp@qq.com> 13:15:00
難道我記錯了?
- -。(583214826) 13:15:14
_beginthread返回了一個ptr
- -。(583214826) 13:15:23
我想應該是用作關閉的
武漢-Error<errorcpp@qq.com> 13:15:49
永遠不要在線程外部強制關閉線程
- -。(583214826) 13:15:57
嗯,好
上海-千層(670825328) 13:16:37

我就是用這個函數,以前試過不close,連續運行10幾個小時,最后handle沒有了,出錯了。一開始都是好的。
武漢-Error<errorcpp@qq.com> 13:17:20
嗯 受教了
杯水車薪(1729751029) 13:19:04
QS$3LX16M424.gif)
武漢-Error<errorcpp@qq.com> 13:19:08
如果用pthread 之類
武漢-Error<errorcpp@qq.com> 13:19:15
是不需要這么麻煩的吧
杯水車薪(1729751029) 13:19:24
好。事情完了。
不過這個人的確讓我們不爽,提議T之
- -。(583214826) 13:20:21
首先要澄清一個問題,那就是CreateThread是Windows的API函數,而_beginthread和_beginthreadex則是CRT庫函數,查看這兩個CRT函數的代碼可以得知其實它們內部是調用的CreateThread(這很顯然嘛,CRT庫也是要運行在Windows上)。
這兩個CRT函數與CreateThread有什么區別呢?區別在于這兩個CRT函數針對其它CRT庫函數,特別是那些涉及內存分配的CRT函數做了特殊的處理。直接在CreateThread API創建的線程中使用sprintf,malloc,strcat等涉及CRT存儲堆操作的CRT庫函數是很危險的,容易造成線程的意外中止。 在使用_beginthread和_beginthreadex創建的線程中可以安全的使用CRT函數,但是必須在線程結束的時候相應的調用_endthread或_endthreadex。雖然都是內部調用CreateThread API創建線程,但是這兩個函數還是有很大的區別。首先,_beginthreadex函數比_beginthread函數多了三個參數,使它看起來更像CreateThread而不是同胞兄弟_beginthread;其次,_beginthread要求線程函數是__cdecl調用約定,并且沒有返回值,而_beginthreadex則要求線程函數是__stdcall調用約定并且返回線程的退出碼;第三,與_beginthread成對調用的_endthread函數內部隱式的調用CloseHandle關閉了線程句柄,而與_beginthreadex成對使用的_endthreadex則沒有關閉線程的句柄,需要顯示的調用CloseHandle關閉線程句柄;最后,這兩個函數在執行成功時返回線程的句柄,可以通過這個句柄調用其它線程相關的API,比如SetThreadPriority,ResumeThread等等。但是執行失敗時返回值是不同的,_beginthread返回 -1 表示失敗,而_beginthreadex返回 0 表示失敗。
武漢-Error<errorcpp@qq.com> 13:17:39
今天討論一個問題
武漢-Error<errorcpp@qq.com> 13:17:44
關于線程的
武漢-Error<errorcpp@qq.com> 13:17:59
//Create a new thread.
HANDLE hThread = CreateThread(NULL, 0, SecondThread,
(PVOID)&x, 0, &dwThreadId);
//We don't reference the new thread anymore,
//so close our handle to it.
closeHandle(hThread);
武漢-Error<errorcpp@qq.com> 13:18:08
這是Windows核心編程的一段代碼
武漢-Error<errorcpp@qq.com> 13:18:23
為啥 CreateThread后面要跟一個closehandle
南昌-貝貝(1125591) 13:19:49
創建線程后,線程有個內核對象,句柄的存在對于內核對象的計數+1.關閉句柄以便減少計數.線程退出時這個內核對象就刪除.
北京-li(76433692) 13:22:06
意味著:句柄不作close 線程退出時 內核對象不自動刪除?需要手工刪除?
北京-li(76433692) 13:22:48
創建時如果不close,在退出線程時候close也是可以的吧?
武漢-Error<errorcpp@qq.com> 13:23:58
貝妞處理這類場景的規范是啥
南昌-貝貝(1125591) 13:24:29
內核對象中保存與線程有關的數據
有句柄存在,這個數據的引用計數就+1
如果不關閉.那么就一直可以通過這個句柄操作數據結構,操作線程
不關閉的話,內核對象在進程退出前永不減少引用.引用為0時才刪除線程內核對象. 如果你不用它,又不 CloseHandle 線程又退出了, 這樣內核對象還在,就好比是有內存泄漏一樣
武漢-Error<errorcpp@qq.com> 13:25:08
用pthread之類的庫不會有這樣的問題吧
南昌-貝貝(1125591) 13:25:09
哥哥我通常保留到句柄...以便以后操作, 在線程退出時再刪除(以后不用操作它的時候,就直接CloseHandle
武漢-Error<errorcpp@qq.com> 13:25:30
在線程退出時再刪除
是自己刪除么?
武漢-Error<errorcpp@qq.com> 13:25:37
還是啟動線程負責刪除
南昌-貝貝(1125591) 13:25:35
是自己刪除
南昌-貝貝(1125591) 13:25:43
系統給你刪除唄
武漢-Error<errorcpp@qq.com> 13:25:53
return 之前 closehandle?
南昌-貝貝(1125591) 13:26:04
你不用操作這個線程了就 CloseHandle
武漢-Error<errorcpp@qq.com> 13:28:24
就是線程外部整的,,,
也就是貝妞基本上都是要帶一個 線程管理模塊
武漢-Error<errorcpp@qq.com> 13:28:33
還是貝妞專業啊
武漢-Error<errorcpp@qq.com> 13:28:40
o(︶︿︶)o 唉,,,
我才注意到這個問題
中山-瘋子(510776002) 13:38:11
當程序調用CreateThread函數時,首先系統為線程建立一個用來管理線程的數據結構,其中包含線程的一些統計信息,如引用計數和退出碼等,這個數據結構被稱為線程對象;接下來系統將從進程的地址空間中為線程的堆棧分配內存并開始線程的執行。當線程結束時,線程的堆棧被釋放,但是線程對象不會馬上被釋放,系統保留它以便其他線程可以通過它檢測線程的有關情況,直到使用CloseHandle函數關閉線程句柄后,線程對象才會被釋放。
但是線程對象也可以提前被釋放,對于大部分的句柄來說(如文件句柄hFile,文件尋找句柄hFindFile等),使用CloseHandle函數關閉句柄意味著整個對象被釋放,但對于線程句柄來說,關閉它僅釋放線程的統計信息,并不會終止線程的執行,所以如果不再需要使用線程句柄的話,在調用CreateThread后馬上就可以將它關閉掉,線程的執行并不會受影響。