亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

托管線程池

系統 1664 0

當多個線程可以調用單個對象的屬性和方法時,對這些調用進行同步處理是非常重要的。 否則,一個線程可能會中斷另一個線程正在執行的任務,使該對象處于一種無效狀態。 其成員不受這類中斷影響的類叫做線程安全類。

Common Language Infrastructure 提供了幾種可用來同步對實例和靜態成員的訪問的策略:

公共語言運行時提供一個線程模型,在該模型中,類分為許多類別,這些類別可以根據要求以各種不同的方式進行同步。 下表顯示了為具有給定同步類別的字段和方法提供的同步支持。

類別

全局字段

靜態字段

靜態方法

實例字段

實例方法

特定代碼塊

無同步

同步上下文

同步代碼區域

僅當標記時

僅當標記時

僅當標記時

手動同步

手動

手動

手動

手動

手動

手動

無同步

這對于對象是默認情況。 任何線程都可以隨時訪問任何方法或字段。 一次只能有一個線程訪問這些對象。

手動同步

.NET Framework 類庫提供大量用于同步線程的類。 請參見 同步基元概述 。

同步代碼區域

可以使用 Monitor 類或編譯器關鍵字來同步代碼塊、實例方法和靜態方法。 不支持同步靜態字段。

Visual Basic 和 C# 都支持使用特定語言關鍵字標記代碼塊,在 C# 中使用的是 lock 語句,在 Visual Basic 中使用的是 SyncLock 語句。 當由線程執行該代碼時,會嘗試獲取鎖。 如果該鎖已由其他線程獲取,則在鎖變為可用狀態之前,該線程一直處于禁止狀態。 當線程退出同步代碼塊時,鎖就會被釋放,它與線程的退出方式無關。

說明

lock SyncLock 語句是使用 Monitor :: Enter Monitor :: Exit 實現的,因此,可以在同步區域中將它們與 Monitor 的其他方法一起使用。

還可以用 MethodImplAttribute MethodImplOptions.Synchronized 修飾方法,其效果和使用 Monitor 或其中一個編譯器關鍵字鎖定整個方法體相同。

Thread :: Interrupt 可用于使線程跳出阻止操作(如等待訪問同步代碼區域)。 Thread.Interrupt 還用于使線程跳出 Thread :: Sleep 等操作。

重要事項

為保護 static 方法(Visual Basic 中的 Shared 方法),請不要鎖定類型,即:C# 中的 typeof(MyType) 、Visual Basic 中的 GetType(MyType) 或 C++ 中的 MyType::typeid 。 而應改用私有靜態對象。 類似地,不要使用 C# 中的 this (Visual Basic 中的 Me )鎖定實例方法。 而應使用私有對象。 類或實例可由其他代碼鎖定,您自己的代碼進行鎖定可能會引起死鎖或性能問題。

編譯器支持

Visual Basic 和 C# 都支持使用 Monitor :: Enter Monitor :: Exit 來鎖定對象的語言關鍵字。 Visual Basic 支持 SyncLock 語句;C# 支持 lock 語句。

這兩種情況下,如果代碼塊中引發異常,則 lock SyncLock 鎖獲取的鎖將自動釋放。 C# 和 Visual Basic 編譯器在發出 try / finally 塊時,在 try 的起始處使用 Monitor.Enter ,在 finally 塊中使用 Monitor.Exit 如果 lock SyncLock 塊內部引發了異常,則會運行 finally 處理程序,從而使您可以執行任何清除工作。

同步上下文

可以使用任何 ContextBoundObject SynchronizationAttribute 來同步所有實例方法和字段。 同一上下文域中的所有對象都共享同一個鎖。 允許多個線程訪問方法和字段,但在任一時刻只允許一個線程訪問。

托管線程池


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。?!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 黄色亚洲毛片 | 久色99| 亚洲 欧美 自拍 卡通 综合 | 久久99精品麻豆国产 | 日本乱人伦片中文字幕三区 | 色综合网亚洲精品久久久 | 久久看片 | 在线观看高清国产福利视频 | 大狠狠大臿蕉香蕉大视频 | 亚洲综合日韩 | 九热视频 | 亚洲欧美日韩国产专区一区 | 免费观看午夜在线欧差毛片 | 在线观看欧美国产 | 国产精品久久久 | 欧美麻豆久久久久久中文 | 97在线观看免费观看高清 | 国产亚洲精aa在线观看不卡 | 不卡的中文字幕 | 日韩免费大片 | 四虎免费永久网站入口 | 91九色视频无限观看免费 | 在线观看一区二区精品视频 | 狠狠色狠狠色很很综合很久久 | 尹人久久| 国内精品久久久久久久久久久久 | 色网综合 | 免费观看黄色毛片 | 久久精品一区二区免费看 | 色综合天天综合网亚洲影院 | 日本免费不卡视频一区二区三区 | 日韩天天操 | 国产精品福利久久 | 91久久国产综合精品女同国语 | 久久国产免费观看精品 | 久久se精品一区二区影院 | 日本不卡免费新一区二区三区 | 夜色私人影院永久地址入口 | 精品久久久久久国产91 | 视频二区 中文字幕 欧美 | 91资源在线视频 |