中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

以1個(gè)實(shí)例講解ManualResetEvent的作用

來(lái)自森大科技官方博客
http://www.cnsendblog.com/index.php/?p=349
GPS平臺(tái)、網(wǎng)站建設(shè)、軟件開(kāi)發(fā)、系統(tǒng)運(yùn)維,找森大網(wǎng)絡(luò)科技!
http://cnsendnet.taobao.com

成都創(chuàng)新互聯(lián)公司是一家專(zhuān)注網(wǎng)站建設(shè)、網(wǎng)絡(luò)營(yíng)銷(xiāo)策劃、微信平臺(tái)小程序開(kāi)發(fā)、電子商務(wù)建設(shè)、網(wǎng)絡(luò)推廣、移動(dòng)互聯(lián)開(kāi)發(fā)、研究、服務(wù)為一體的技術(shù)型公司。公司成立十余年以來(lái),已經(jīng)為數(shù)千家展覽展示各業(yè)的企業(yè)公司提供互聯(lián)網(wǎng)服務(wù)?,F(xiàn)在,服務(wù)的數(shù)千家客戶(hù)與我們一路同行,見(jiàn)證我們的成長(zhǎng);未來(lái),我們一起分享成功的喜悅。

  1. 源碼下載:
    下載地址:http://files.cnblogs.com/tianzhiliang/ManualResetEventDemo.rar
    Demo:
    以1個(gè)實(shí)例講解ManualResetEvent的作用
  2. ManualResetEvent詳解
    ManualResetEvent 允許線(xiàn)程通過(guò)發(fā)信號(hào)互相通信。通常,此通信涉及一個(gè)線(xiàn)程在其他線(xiàn)程進(jìn)行之前必須完成的任務(wù)。當(dāng)一個(gè)線(xiàn)程開(kāi)始一個(gè)活動(dòng)(此活動(dòng)必須完成后,其他線(xiàn)程才能開(kāi)始)時(shí),它調(diào)用 Reset 以將 ManualResetEvent 置于非終止?fàn)顟B(tài),此線(xiàn)程可被視為控制 ManualResetEvent。調(diào)用 ManualResetEvent 上的 WaitOne 的線(xiàn)程將阻止,并等待信號(hào)。當(dāng)控制線(xiàn)程完成活動(dòng)時(shí),它調(diào)用 Set 以發(fā)出等待線(xiàn)程可以繼續(xù)進(jìn)行的信號(hào)。并釋放所有等待線(xiàn)程。一旦它被終止,ManualResetEvent 將保持終止?fàn)顟B(tài)(即對(duì) WaitOne 的調(diào)用的線(xiàn)程將立即返回,并不阻塞),直到它被手動(dòng)重置。可以通過(guò)將布爾值傳遞給構(gòu)造函數(shù)來(lái)控制 ManualResetEvent 的初始狀態(tài),如果初始狀態(tài)處于終止?fàn)顟B(tài),為 true;否則為 false。

代碼在同級(jí)目錄中有,這里就不貼出來(lái)了。
以1個(gè)實(shí)例講解ManualResetEvent的作用
圖1
從下圖中可以看出,實(shí)例化ManualResetEvent對(duì)象時(shí),傳的是true,則將初始狀態(tài)設(shè)置為終止。程序首次運(yùn)行,兩個(gè)線(xiàn)程都在持續(xù)運(yùn)行,如圖3所示
以1個(gè)實(shí)例講解ManualResetEvent的作用
圖2
以1個(gè)實(shí)例講解ManualResetEvent的作用
圖3
輸入reset命令,執(zhí)行Reset方法,將事件狀態(tài)設(shè)置為非終止?fàn)顟B(tài),導(dǎo)致線(xiàn)程阻止。所以?xún)蓚€(gè)線(xiàn)程方法都停止運(yùn)行了
以1個(gè)實(shí)例講解ManualResetEvent的作用
輸入set命令,執(zhí)行Set方法,將事件狀態(tài)設(shè)置為終止?fàn)顟B(tài),允許一個(gè)或多個(gè)等待線(xiàn)程繼續(xù),所以2個(gè)線(xiàn)程又都開(kāi)始運(yùn)行了。
以1個(gè)實(shí)例講解ManualResetEvent的作用
![]
結(jié)論:WaitOne方法在這里很關(guān)鍵,阻止當(dāng)前線(xiàn)程,直到當(dāng)前 System.Threading.WaitHandle 收到信號(hào)。ManualResetEvent對(duì)象可以作為一個(gè)全局變量,多個(gè)線(xiàn)程可以訪(fǎng)問(wèn)它,如果ManualResetEvent對(duì)象實(shí)例化傳的是true時(shí),或者M(jìn)anualResetEvent對(duì)象被執(zhí)行Set方法時(shí),寫(xiě)了.WaitOne的線(xiàn)程方法將繼續(xù)執(zhí)行;如果ManualResetEvent對(duì)象被執(zhí)行Reset方法時(shí),寫(xiě)了.WaitOne的線(xiàn)程方法將停止執(zhí)行,一直等待,知道被執(zhí)行了Set方法為止。
以1個(gè)實(shí)例講解ManualResetEvent的作用
驗(yàn)證:如下圖所示,注釋了WaitOne方法,即使執(zhí)行了Reset方法,由于沒(méi)有WaitOne的控制,這兩個(gè)線(xiàn)程一樣的在運(yùn)行。
以1個(gè)實(shí)例講解ManualResetEvent的作用

來(lái)自森大科技官方博客
http://www.cnsendblog.com/index.php/?p=349
GPS平臺(tái)、網(wǎng)站建設(shè)、軟件開(kāi)發(fā)、系統(tǒng)運(yùn)維,找森大網(wǎng)絡(luò)科技!
http://cnsendnet.taobao.com

文章標(biāo)題:以1個(gè)實(shí)例講解ManualResetEvent的作用
分享鏈接:http://www.rwnh.cn/article12/jipodc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站軟件開(kāi)發(fā)建站公司、網(wǎng)站收錄、手機(jī)網(wǎng)站建設(shè)、外貿(mào)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

微信小程序開(kāi)發(fā)
上虞市| 高陵县| 宜丰县| 德兴市| 雷山县| 会理县| 乐亭县| 台东市| 揭西县| 景泰县| 黄平县| 新巴尔虎右旗| 滁州市| 南靖县| 将乐县| 江阴市| 高邑县| 迁安市| 阜新市| 绥宁县| 阿拉尔市| 舞钢市| 鹿邑县| 台湾省| 密云县| 专栏| 呼玛县| 博湖县| 富蕴县| 灵丘县| 夹江县| 保康县| 西乌珠穆沁旗| 阳原县| 绍兴市| 隆尧县| 宁强县| 武山县| 华蓥市| 乐昌市| 长沙市|