1樓:假設還是如果
#include
#include
using namespace std;
/*handle createthread(lpsecurity_attributes lpthreadattributes,
size_t dwstacksize,
lpthread_start_routine lpstartaddress,
lpvoid lpparameter,
dword dwcreationflags,lpdword lpthreadid
);*/
dword winapi thread1proc(lpvoid argv)
int main()
vc++中通過createthread建立的執行緒,當執行緒入口函式執行完後,執行緒自己會關閉嗎?
2樓:匿名使用者
不會自己關閉來的。
正確源的做法是:
// 儲存執行緒
bai控制代碼du
handle hthread = createthread(.....)
// 等待執行緒完成zhi,如果是多執行緒的,需要呼叫waitformultipleobjects
waitforsingleobjects(max_threads,hthread,true,infinite);
// 最後dao關閉控制代碼
closehandle(hthread );
3樓:匿名使用者
執行緒函式結束 執行緒就結束 當然是關閉了; 但是 執行緒控制代碼要手動closehandle的 親
c++ 建立執行緒用createthread後,執行緒直接就開始執行了嗎?還是還要再給它一個命令才能執行?
4樓:試圖製造混亂
這要看你createtheread時的引數如何設的,handle createthread(
lpsecurity_attributes lpthreadattributes, // sd
dword dwstacksize, // initial stack size
lpthread_start_routine lpstartaddress, // thread function
lpvoid lpparameter, // thread argument
dword dwcreationflags, // creation option
lpdword lpthreadid // thread identifier
);第五個引數dwcreationflags :執行緒標誌,可取值如下
(1)create_suspended(0x00000004):建立一個掛起的執行緒,需要resumethread喚醒
(2)0:表示建立後立即啟用。
c++多執行緒同時執行兩個函式該怎樣程式設計啊?
5樓:
這個是完全取決於bai你的需求。如果du
你只是做控制同一個資料zhi源使用的,就可以dao一個執行緒,分
內別在收到不同的訊息,容呼叫不同的函式。畢竟你只有一個鍵盤,不會真的同時收到兩個事件。這種構架下面,兩個函式必須比較短不能有堵塞,或者等待(大多數情況是這樣的)。
另外一種情況是,當你的處理量比較大,則需要多執行緒,也就是三個執行緒,一個執行緒收訊息事件,另外兩個分別處理事件,如果你不是多核cpu,其結果和上面的構架是一樣的。在多執行緒構架下面,如果是對同一個資料體處理,那麼效果和前者是一樣,甚至更差。至於這麼建立多執行緒,我就不說,這個真的需要你自己去看看。
c++中createthread建立執行緒, 執行緒函式return後算不算已經銷燬了執行緒?
6樓:匿名使用者
算。c++11以後c++自身標準包含了多執行緒的功能。可以不用學winapi了
多執行緒有幾種實現方法,java多執行緒都有幾種方式實現??
執行緒建立 執行 handle handle1 dword id1 執行緒等待 waitforsingleobject handle1,infinite 執行緒同步 生產者消費者 handle m s consumer m s consumer createsemaphore null,0,20,n...
C語言基礎網路程式設計求助如何實現多執行緒
使用fork建立父子程序和socketpair進行監控即可 include include include include include include include include include include include include include void thread void...
c語言開發中,linux下的多執行緒和網路程式設計基礎,這些都有什麼用處?做什麼工作會用這多執行緒和socket呢
socket,主要是在網路開發應用中運用的到,多執行緒,在linux開發中單程序中可以建立多執行緒去處理不同的任務。這個很常用的。主要做網路方面的。網路產品一般都會有用到 比如 路由器 ap ac等等吧。多執行緒程式設計和socket是開發網路產品的基本功,把 unix網路程式設計 看會就可以做一般...