談談AutoResetEvent的用法

2021-08-28 21:24:37 字數 1219 閱讀 6395

autoresetevent屬性介紹

建構函式:autoresetevent(bool initialstate),宣告時需要指明initialstate值。

false:無訊號,子執行緒的waitone方法不會被自動呼叫

true:有訊號,子執行緒的waitone方法會被自動呼叫

reset():將事件狀態設定為非終止狀態,導致執行緒阻止;如果該操作成功,則返回true;否則,返回false。

set ():將事件狀態設定為終止狀態,允許乙個或多個等待執行緒繼續;如果該操作成功,則返回true;否則,返回false。

waitone(): 阻止當前執行緒,直到收到訊號。

waitone(timespan, boolean) :阻止當前執行緒,直到當前例項收到訊號,使用 timespan 度量時間間隔並指定是否在等待之前退出同步域。

waitall():等待全部訊號

例項介紹

在這裡插入**片

using system;

using system.collections.generic;

using system.componentmodel;

using system.data;

using system.drawing;

using system.linq;

using system.text;

using system.threading.tasks;

using system.windows.forms;

using system.threading;

private void button1_click( object sender, eventargs e )

private void dowork( )

}private void juice( )

else

}private void timer1_tick( object sender, eventargs e )

private void timer2_tick( object sender, eventargs e )

private void timer3_tick( object sender, eventargs e )

}}

個人心得:

計畫借助autoresetevent來實現對執行緒的暫停和重啟,通過這個例子,可以看到autoresetevent事件對執行緒有中斷的作用。

談談標頭檔案

標頭檔案為所有extern物件宣告,函式宣告以及inline函式 模板 定義提供了乙個集中的位置。1 標頭檔案提供了兩個保證 第一,保證所有檔案都包含同乙個 全域性物件 或函式的同乙份申明。同乙個物件只能有乙個定義,但是可以有多個宣告,如果在每個需要用到物件的地方都手動加上宣告,有可能出現有點地方宣...

談談考試系統

這幾天又在忙考試系統的事了,學校中總有那麼多得考試,每個學院的領導都希望實現學生無紙化考試,一來方便老師判卷的同時,也鍛鍊了學生計算機的能力,同時對大學老師教學有乙個督促的作用。我們的考試系統有很多的不足之處,我們一直都在不斷的改進和完善。考試系統最初是由李雪宇學姐做的,現在看考試系統我總會不由得對...

談談PostThreadMessage使用

今天不csdn是怎麼了,又訪問不了了。第一年學習mfc,使用多執行緒還算嫻熟。但一直卻不知道訊息佇列是基於執行緒的,可謂悲劇,說著都臉紅。今天有這麼乙個需求,多個工作執行緒在完成時需要寫日誌,該功能非必要功能,由於寫的量還是比較大,而且多個執行緒同時寫乙個檔案我也不知道會不會出問題,雖然現在我開20...