語言多執行緒封裝執行緒啟動返回邏輯

2021-10-06 15:19:21 字數 1910 閱讀 3893

封裝多執行緒模組-執行緒啟動(返回值-邏輯)

• 1、執行緒_啟動_邏輯()

• 2、shcreatethread

• 易語言shcreatethread

shcreatethread function | microsoft docs

511遇見易語言多執行緒大漠多執行緒

shcreatethread

.版本 2

.引數 執行緒位址, 子程式指標, , pfnthreadproc

.引數 資料, 整數型, , pdata,any---0

指向包含初始化資料的可選應用程式定義資料結構的指標。它被傳遞給pfnthreadproc和pfncallback(可選)指向的函式。這個值可以是null。

.引數 標誌, 整數型, , dwflags------0

控制函式行為的標誌。乙個或多個ctf常數。

.引數 返回資訊, 整數型, , pfncallback—0

shcreatethread將等待pfncallback所指向的函式返回,然後再返回給它的呼叫者。pfncallback指向的函式的返回值被忽略。

這個函式,這是shlwapi.dll 的乙個匯出函式,這個函式看字面也能理解是個建立多執行緒的函式,是基於物件操作的多執行緒函式,相對比較穩定

原始碼:

.版本 2

.支援庫 ethread

.子程式 _按鈕1_被單擊

編輯框4.內容 = 到文字 (啟動執行緒 (&子程式1, , e_hwnd))

編輯框1.內容 = 到文字 (e_hwnd)

.子程式 子程式1

.區域性變數 i

.判斷迴圈首 (e_是否啟動 = 假)

i = i + 1

列表框1.加入專案 (到文字 (i), )

標籤1.標題 = 到文字 (列表框1.取專案數 ())

延時 (1)

處理事件 ()

.判斷迴圈尾 ()

.子程式 _按鈕2_被單擊

a_hwnd = 執行緒_啟動_控制代碼 (&子程式2, , a_thid)

編輯框2.內容 = 到文字 (a_hwnd)

編輯框3.內容 = 到文字 (a_thid)

.子程式 子程式2

.區域性變數 n

.判斷迴圈首 (a_是否啟動 = 假)

n = n + 1

列表框2.加入專案 (到文字 (n), )

標籤2.標題 = 到文字 (列表框2.取專案數 ())

延時 (1)

處理事件 ()

.判斷迴圈尾 ()

.子程式 _按鈕3_被單擊

e_是否啟動 = 真

執行緒_關閉控制代碼 (e_hwnd)

.子程式 _按鈕4_被單擊

a_是否啟動 = 真

執行緒_關閉控制代碼 (a_hwnd)

.子程式 _按鈕5_被單擊

編輯框4.內容 = 到文字 (執行緒_啟動_邏輯 (&子程式2, , l_hwnd, l_thid))

編輯框2.內容 = 到文字 (l_hwnd)

編輯框3.內容 = 到文字 (l_thid)

.子程式 _按鈕6_被單擊

編輯框2.內容 = 到文字 (執行緒_啟動_擴充套件 (&子程式2))

.版本 2

.引數 要啟動的子程式, 子程式指標, , 要啟動的子程式

返回 (shcreatethread (要啟動的子程式, 0, 0, 0))

.子程式 執行緒_關閉控制代碼, 邏輯型, 公開, 關閉乙個執行緒,關閉後執行緒繼續執行,但是無法對這個執行緒操作

.引數 執行緒控制代碼, 整數型

返回 (closehandle (執行緒控制代碼))

易語言多執行緒封裝執行緒啟動優先權設定

1 setthreadpriority 2 resumethread 模組原始碼 子程式 執行緒 啟動 優先權,整數型,公開,返回執行緒控制代碼,必須用 執行緒 關閉 控制代碼 關閉這個控制代碼 引數 要啟動的子程式,子程式指標,要啟動的子程式 引數 要傳去子程式的引數,整數型,可空,往子程式傳遞乙...

多執行緒封裝

每個成員函式 除了在第 12.6 節介紹的 static 成員函式外 都有乙個額外的 隱含的形參 this。為了理解成員函式的呼叫,可考慮下面的語句 total.same isbn trans 就如編譯器這樣重寫這個函式呼叫,this指標被傳入成員函式 sales item same isbn to...

多執行緒程式設計之執行緒的封裝

前人總結出,乙個執行緒安全的class應當滿足的條件 1.從多個執行緒訪問時,其表現出正確的行為,無論作業系統如何排程這些執行緒,無論這些執行緒的執行順序如何交織。2.呼叫端 無需額外的同步或其他協調動作 在寫多執行緒程式時腦子裡要有這樣的意識,下面我總結了幾條比較具體的注意事項。使用多執行緒要考慮...