您好,登錄后才能下訂單哦!
這篇文章給大家介紹使用易語言怎么實現多線程計算,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
多線程計算
此功能需要加載精易模塊5.6
.版本 2 .支持庫 iext .程序集 窗口程序集1 .程序集變量 總線程id, 整數型 .程序集變量 線程判斷數量, 整數型 .程序集變量 線程總數, 整數型 .程序集變量 線程id, 整數型 .程序集變量 當前表項, 整數型 .程序集變量 許可證, 整數型 .子程序 __啟動窗口_創建完畢 .局部變量 i1, 整數型 .計次循環首 (10000, i1) 置隨機數種子 () 超級列表框1.插入表項 (, , , , , ) 超級列表框1.置標題 (i1 - 1, 0, 到文本 (取隨機數 (1, 99))) 超級列表框1.置標題 (i1 - 1, 1, 多項選擇 (取隨機數 (1, 4), “加”, “減”, “乘”, “除”)) 超級列表框1.置標題 (i1 - 1, 2, 到文本 (取隨機數 (1, 99))) .計次循環尾 () .子程序 _按鈕_啟動_被單擊 總線程id = 線程_啟動 (&子程序_計算, , ) .子程序 子程序_計算 .局部變量 表項引索, 整數型 .判斷循環首 (線程判斷數量 < 超級列表框1.取表項數 ()) .如果真 (線程總數 < 到整數 (編輯框_總線程數.內容)) 線程判斷數量 = 線程判斷數量 + 1 線程id = 線程_啟動 (&子程序_結果) 超級列表框1.置標題 (表項引索, 3, “計算中”) 表項引索 = 表項引索 + 1 線程總數 = 線程總數 + 1 .如果真結束 .判斷循環尾 () .子程序 子程序_結果 .局部變量 數值1, 雙精度小數型 .局部變量 數值2, 雙精度小數型 .局部變量 計算符號, 文本型 .局部變量 結果, 雙精度小數型 .局部變量 i, 整數型 當前表項 = 當前表項 + 1 i = 當前表項 - 1 數值1 = 到數值 (超級列表框1.取標題 (i, 0)) 數值2 = 到數值 (超級列表框1.取標題 (i, 2)) 計算符號 = 超級列表框1.取標題 (i, 1) .如果真 (計算符號 = “加”) 結果 = 數值1 + 數值2 .如果真結束 .如果真 (計算符號 = “減”) 結果 = 數值1 - 數值2 .如果真結束 .如果真 (計算符號 = “乘”) 結果 = 數值1 × 數值2 .如果真結束 .如果真 (計算符號 = “除”) 結果 = 數值1 ÷ 數值2 .如果真結束 程序_延時 (1, 1) 超級列表框1.置標題 (i, 3, 到文本 (結果)) 程序_延時 (1, 1) 線程總數 = 線程總數 - 1 .子程序 _按鈕_銷毀_被單擊 線程_銷毀 (總線程id) .子程序 _按鈕_暫停_被單擊 線程_掛起 (總線程id) .子程序 _按鈕_恢復_被單擊 線程_恢復 (總線程id) .子程序 __啟動窗口_將被銷毀 線程_銷毀 (總線程id)
運行結果:
總結
關于使用易語言怎么實現多線程計算就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。