關於一些輔助庫的thread(二)

2021-06-20 09:23:06 字數 811 閱讀 4721

thread庫用起來還是比較簡單、快捷的,只需要繼承一下,就可以直接應用,個人感覺比較爽。

建立thread類,裡面包括建構函式,virtual析構函式,建構函式主要是初始化一些資料,比如控制代碼和threadid,還有兩個bool狀態成員。

析構主要就是**handle.

然後是開始函式start,裡面主要應用_beginthreadex,已經有乙個文章裡面專門介紹了一下他,可以看一下,主要和createthread不同的一是

引數,而是好像是乙個tiddata結構體,資料儲存。就是_beginthreadex會分配tiddata結構保留像id等等資料。

start函式裡面會建立handle如果成功,hthread和threadid就都可以被賦值了,如果失敗直接返回false。

resume()函式,如果bsuspend標誌是true,把他改為false,然後啟用執行緒。

suspend()函式,如果bsuspend標誌是false,把他改為true,然後暫停執行緒。

terminate()函式,無論執行緒是否在執行,直接改變bterminte標誌為true.

waitfor()函式,終止函式呼叫後,可能執行緒還未完成,如此再給他幾秒鐘,然後徹底終止執行緒。

還有幾個輔助函式,如getid,get控制代碼,get。。。。

當然兩個最主要的函式乙個(實現/執行)函式,就是繼承這個庫,主要就是在這裡執行執行緒操作。

另乙個函式就是unsigned winapi threadproc(lpvoid lparam),裡面涉及到自呼叫和啟用執行函式,並且,如果執行函式結束後,可以自行關閉控制代碼。

暫時應用就這麼多,如果有還可以再加!

關於一些輔助庫singleton

數學與邏輯學中,singleton定義為 有且僅有乙個元素的集合 單例模式最初的定義出現於 設計模式 艾迪生維斯理,1994 保證乙個類僅有乙個例項,並提供乙個訪問它的全域性訪問點。class singleton private static singleton m psingleton 顯然單例模...

關於Thread的一些

執行緒有幾種狀態 1.產生 new 執行緒已經產生,只是放在記憶體中啥事都不幹。2.可執行 runnable 在呼叫了start方法到它獲得系統給它分配了時間片之前,或者時間片用完了但還沒執行完。3.執行 running 獲得了時間片,正在執行。4.死亡 dead 執行完成 5.阻塞 block 不...

Thread的一些基本操作

1 執行緒的兩種建立方式 1 繼承thread類 class xc extends thread xc string name public void run public class threaddemo01 2 實現runnable介面 建立執行緒方式二 繼承runnable介面 練習 賣票 c...