易語言多執行緒大漠多執行緒模板UI更新

2021-10-06 16:26:07 字數 1803 閱讀 5199

ui更新就是對視窗的元件超級列表框傳送讀寫,採用了封裝。

大漠多執行緒模板原始碼:

.版本 2

.支援庫 iext

.子程式 ui_更新, , , 用來更新視窗的超級列表框相關執行緒資訊

.引數 主序號, 整數型

.引數 操作, 整數型

.區域性變數 列表索引, 整數型

' 增加

.如果真 (操作 = #ui_增加)

列表索引 = 視窗列表.插入表項 (, , , , , )

視窗列表.置標題 (列表索引, 0, 到文字 (執行緒資訊 [主序號].視窗控制代碼)) ' 視窗控制代碼

視窗列表.置標題 (列表索引, 0, 到文字 (執行緒資訊 [主序號].程序pid)) ' pid

視窗列表.置標題 (列表索引, 0, 到文字 (主序號)) ' 主序號

視窗列表.置標題 (列表索引, 0, 到文字 (主序號 + maxhwnd)) ' 副序號

ui_更新 (主序號, #ui_更新)

.如果真結束

' 刪除

.如果真 (操作 = #ui_刪除)

列表索引 = 取列表索引號 (主序號)

.如果真 (列表索引 = -1)

返回 (-1)

.如果真結束

視窗列表.刪除表項 (列表索引)

視窗列表.重新整理顯示 ()

返回 ()

.如果真結束

' 更新

.如果真 (操作 = #ui_更新)

列表索引 = 取列表索引號 (主序號)

.如果真 (列表索引 = -1)

返回 (-1)

.如果真結束

' 先更新主線程

視窗列表.置標題 (列表索引, 4, 執行緒狀態轉文字 (執行緒資訊 [主序號].執行緒狀態)) ' 主線程狀態

視窗列表.置標題 (列表索引, 6, 執行緒資訊 [主序號].任務狀態) ' 主線程任務狀態

' 再更副主線程

視窗列表.置標題 (列表索引, 5, 執行緒狀態轉文字 (執行緒資訊 [主序號 + maxhwnd].執行緒狀態)) ' 副執行緒狀態

視窗列表.置標題 (列表索引, 7, 執行緒資訊 [主序號 + maxhwnd].異常狀態) ' 異常狀態

視窗列表.重新整理顯示 ()

返回 ()

.如果真結束

.子程式 執行緒狀態轉文字, 文字型

.引數 執行緒狀態, 整數型

.如果真 (執行緒狀態 = #執行緒狀態_未啟動)

返回 (「未啟動」)

.如果真結束

.如果真 (執行緒狀態 = #執行緒狀態_正在啟動)

返回 (「正在啟動」)

.如果真結束

.如果真 (執行緒狀態 = #執行緒狀態_正在執行)

返回 (「正在執行」)

.如果真結束

.如果真 (執行緒狀態 = #執行緒狀態_正在暫停)

返回 (「正在暫停」)

.如果真結束

.如果真 (執行緒狀態 = #執行緒狀態_暫停)

返回 (「暫停」)

.如果真結束

.如果真 (執行緒狀態 = #執行緒狀態_正在恢復)

返回 (「正在恢復」)

.如果真結束

.如果真 (執行緒狀態 = #執行緒狀態_正在停止)

返回 (「正在停止」)

.如果真結束

日誌輸出 (「未定義的執行緒狀態」 + 到文字 (執行緒狀態))

返回 (「未定義」)

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

詳細參考:511遇見易語言多執行緒大漠多執行緒-33大漠多執行緒模板-3ui更新

易語言多執行緒大漠多執行緒模板指令碼延時

易語言裡有延遲 延時,模組裡也有程式延時,超級延時,之類的命名,但多執行緒裡的指令碼的暫停和恢復,還涉及到內部解綁,這裡採用ui通知的方式,開始真正的暫停,使用死迴圈,不去呼叫系統介面,減少系統資源的占用。511遇見易語言多執行緒大漠多執行緒 大漠多執行緒指令碼延時 版本 2 子程式 指令碼延時,用...

易語言多執行緒大漠多執行緒模板多執行緒初始化

多執行緒初始化,在啟動視窗後,需要首先呼叫,包括對執行緒控制代碼,視窗控制代碼,程序pid,程序狀態,異常狀態,是否暫停,是否結束的初始化,特別說明的是,為任務狀態申請記憶體空間,因為任務狀態的資料型別是文字型,防止避免多執行緒訪問文字型變數引發的資料衝突,預先分配好記憶體位址。511遇見易語言多執...

易語言多執行緒大漠多執行緒指令碼主副執行緒

在大漠多執行緒模板中,指令碼副執行緒的作用主要是乙個監控執行緒,可以監控遊戲視窗是否存在,遊戲是否卡屏,是否掉線,當然你可以用來進行遊戲裡的其他檢測監控。511遇見易語言多執行緒大漠多執行緒 大漠多執行緒主副執行緒 版本 2 子程式 指令碼副執行緒,監控執行緒 引數 序號,整數型 區域性變數 dm,...