乙個簡單的C 多執行緒間同步的例子

2022-05-01 08:12:08 字數 3141 閱讀 6092

在開發中經常會遇到執行緒的例子,如果某個後台操作比較費時間,我們就可以啟動乙個執行緒去執行那個費時的操作,同時程式繼續執行。在某些情況下可能會出現多個執行緒的同步協同的問題,下面的例子就展示了在兩個執行緒之間如何協同工作。

這個程式的思路是共同做一件事情(從乙個arraylist中刪除元素),如果執行完成了,兩個執行緒都停止執行。

說明:要實現執行緒同步不止這一種方式。在這裡採用了事件,在事件處理程式裡中止了執行緒

標籤:多執行緒

執行緒同步

[**]

01

usingsystem;

02

usingsystem.collections;

03

usingsystem.collections.generic;

04

usingsystem.threading;

05

06

///

07

/// 在開發中經常會遇到執行緒的例子,如果某個後台操作比較費時間,我們就可以啟動乙個執行緒去執行那個費時的操作,同時程式繼續執行。在某些情況下可能會出現多個執行緒的同步協同的問題,下面的例子就展示了在兩個執行緒之間如何協同工作。

08

///

09

///這個程式的思路是共同做一件事情(從乙個arraylist中刪除元素),如果執行完成了,兩個執行緒都停止執行。

10

11

12

13

///

14

publicclassthreaddemo

15

25

publicthreaddemo(intnumber)

26

33

newthread(newthreadstart(run));//兩個執行緒共同做一件事情

34

newthread(newthreadstart(run));//兩個執行緒共同做一件事情

35

"執行緒1";

36

"執行緒2";

37

neweventhandler(threaddemo_onnumberclear);

38

39

}

40

///

41

/// 開始工作

42

///

43

publicvoidaction()

44

48

///

49

/// 共同做的工作

50

///

51

privatevoidrun()

52

64

monitor.exit(this);//取消鎖定

65

thread.sleep(5);

66

}

67

}

68

69

//執行完成之後,停止所有執行緒

乙個簡單的C 多執行緒間同步的例子

在開發中經常會遇到執行緒的例子,如果某個後台操作比較費時間,我們就可以啟動乙個執行緒去執行那個費時的操作,同時程式繼續執行。在某些情況下可能會出現多個執行緒的同步協同的問題,下面的例子就展示了在兩個執行緒之間如何協同工作。這個程式的思路是共同做一件事情 從乙個arraylist中刪除元素 如果執行完...

乙個簡單的C 多執行緒間同步的例子

在開發中經常會遇到執行緒的例子,如果某個後台操作比較費時間,我們就可以啟動乙個執行緒去執行那個費時的操作,同時程式繼續執行。在某些情況下可能會出現多個執行緒的同步協同的問題,下面的例子就展示了在兩個執行緒之間如何協同工作。這個程式的思路是共同做一件事情 從乙個arraylist中刪除元素 如果執行完...

乙個簡單的C 多執行緒間同步的例子

在開發中經常會遇到執行緒的例子,如果某個後台操作比較費時間,我們就可以啟動乙個執行緒去執行那個費時的操作,同時程式繼續執行。在某些情況下可能會出現多個執行緒的同步協同的問題,下面的例子就展示了在兩個執行緒之間如何協同工作。這個程式的思路是共同做一件事情 從乙個arraylist中刪除元素 如果執行完...