多線程計算
此功能需要加載精易模塊5.6
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
.版本 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) |
運行結果:
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對服務器之家的支持。如果你想了解更多相關內容請查看下面相關鏈接