互斥(mutex)和事件(event)的區別

互斥與事件...

互斥(mutex)和事件(event)的區別

互斥與事件

在C#中,有許多不同的執行緒同步選項。兩個更廣泛使用的是互斥和事件。這兩者到底有什麼區別?哪一個是更好的選擇?

event選項可以給執行緒一個選項,讓它阻塞直到一個事件被廣播為止,因此被稱為“event”。這與將某個事件置於睡眠狀態,並且只有在發生重要事件時才將其喚醒是一樣的。事件不同於互斥體,因為互斥體沒有信令選項或函式。一旦有人能夠等待訊號被叫醒,事件就能夠清除訊號。即使是API也允許該選項阻塞,直到一個或所有不同的事件被髮訊號。此外,事件是核心物件。與互斥體相比,它們並不“更輕”。事件基本上是具有兩種狀態的核心物件。通常,一個事件表示一個事件的到來,有時甚至表示一個I/O操作的結束。

“互斥”表示互斥。它是一種用於共享資源的範圍協調機制。把它看作一種交易形式。您沒有義務等待,儘管您希望訪問一些共享資源(僅在其他已訪問的例項中)您正在阻止。互斥由兩個狀態組成,儘管互斥是存在的。這是為了保護一段程式碼,這些程式碼通常會更新共享資源,使其免受將互斥鎖宣告給將在其中釋放的部分的部分。這導致沒有其他執行緒可以透過該節。

那些試圖藉助互斥來模擬事件的人不得不遇到這樣一個問題:一旦獲得鎖或發出事件訊號,這個人就會把其他人拒之門外,直到鎖被釋放。這不是發出訊號的事件的語義。在沒有任何鎖的情況下,事件可以保持釋出狀態,並且gate的形式將可用於所有執行緒測試。提交給程序間同步的互斥體處於核心模式物件中。在一個方法下為多執行緒同步所做的事件在使用者模式物件中。

互斥物件太重,太一般。事件物件要輕得多。使用者模式同步在大多數情況下使用,因為它提供較少的CPU週期。互斥非常像一個關鍵部分,用於同步對共享資源的訪問。事件具有完全不同的功能,因為它們用於同步任務或管理某些人的任務排程。

事件更像是一個條件變數,與Mutex不同,Mutex在某些術語中更像amonitor,也可以是訊號量/Mutex的傳統形式。

總結:

1.event選項能夠為執行緒提供阻塞選項,直到事件被廣播,因此名為“event”

2.事件基本上是一個核心物件,它有兩種狀態。通常,一個事件表示一個事件的到來,有時甚至表示一個I/O操作的結束。

3.“互斥”代表互斥。它是共享資源的範圍協調機制的一種形式。

4.致力於程序間同步的互斥體處於核心模式物件中。在一個方法下為多執行緒同步所做的事件在使用者模式物件中。

5.事件更像是一個條件變數,不像Mutex,Mutex在某些術語中更像amonitor,也可以是傳統的訊號量/Mutex形式。

  • 發表於 2021-06-23 17:48
  • 閱讀 ( 45 )
  • 分類:通用

你可能感興趣的文章

事件(incident)和事件(event)的區別

事件與事件 由於具有相似的含義,如果不知道事件和事件的區別,就不能在英語中準確地使用它們。incident這個詞既用作名詞也用作形容詞,而event這個詞只用作名詞。event這個詞起源於16世紀晚期。根據《牛津英語詞典》,in...

  • 發佈於 2020-10-22 22:12
  • 閲讀 ( 40 )

代表(delegates)和c中的事件#(events in c#)的區別

代表(delegates)和c中的事件#(events in c#)的區別 C是微軟開發的一種程式語言。它支援結構化程式設計和麵向物件程式設計。委託和事件用於C中的事件驅動程式設計。委託是指向方法的型別安全指標。在具有圖形使用者介面(GUI...

  • 發佈於 2020-10-24 02:21
  • 閲讀 ( 61 )

正規化(paradigm)和組合(syntagm)的區別

...麼是範例(a paradigm)? 正規化是在特定的句法角色中產生互斥選擇的一組語言專案。範例關係包括可以互相替代的符號。這種替換通常會改變意思。在聚合關係中,一個詞項通常可以被同一類別的另一個詞項代替。例如,名詞用...

  • 發佈於 2020-10-24 22:28
  • 閲讀 ( 63 )

任務(task)和活動(activity)的區別

...成的。 活動是什麼意思? 另一方面,活動一詞指的是“事件”或“發生”。這是這兩個詞的主要區別。請注意以下兩句話: 俱樂部裡有許多活動正在進行。 學院裡沒有活動。 在上面給出的兩個句子中,你可以看到activity這個...

  • 發佈於 2020-11-03 04:09
  • 閲讀 ( 56 )

歷史(history)和故事(story)的區別

...詞,具有不同的含義和用法。歷史一詞指的是“過去”的事件,另一方面,“故事”一詞指的是“某一事件的敘述”,這是這兩個詞的主要區別。語言學家認為,故事這個詞是由詞的歷史演變而來的,這種變化稱為“失音”。根...

  • 發佈於 2020-11-05 18:41
  • 閲讀 ( 50 )

用活動天賦裝扮你的谷歌日曆

...串帖子是由TestFreaks.com網站包括小玩意和科技產品評論。 事件天賦 谷歌日曆可能是目前最流行的雲日曆。原因有很多,包括它可以在任何地方使用,它可以跨許多不同的平臺工作,而且是免費的。然而,有一件事你可以說谷歌...

  • 發佈於 2021-04-13 12:15
  • 閲讀 ( 51 )

為dell伺服器硬體警報設定電子郵件通知

...警報時執行的操作。不幸的是,沒有一個工具可以對所有事件應用統一的通知,因此我們將提供一個指令碼,它將配置所有警報操作,以傳送一封電子郵件通知您相應的事件。雖然您可以手動設定這些,但擁有一個指令碼非常理...

  • 發佈於 2021-04-13 12:25
  • 閲讀 ( 36 )

蘋果公司正在聘請siri event maven,以使其在文化活動方面更加聰明

蘋果希望在即將到來的重大事件中,讓Siri助手變得更智慧一些。該公司已經釋出了一份名為“Siri Event Maven”的職位的招聘名單,最終擔任該職位的人將負責提供“集體時代精神中文化事件的戰略意識。”9to5Mac在帖子中首次報道...

  • 發佈於 2021-05-28 19:40
  • 閲讀 ( 21 )

樹形圖

...數學中的樹形圖 樹形圖允許使用者從一個點開始,做出互斥的決定或經歷互斥的事件,以沿著樹的分支走下去。一旦為每個節點分配了適當的值,使用樹形圖就很簡單了。 代表可能結果的機會節點必須分配一個概率。決策節...

  • 發佈於 2021-06-01 11:02
  • 閲讀 ( 41 )

divx公司(divx)和阿維(avi)的區別

...,而AVI負責如何儲存資料以及其他相關資訊4.DivX和AVI不是互斥的,也不是互斥的。DivX影片可能在另一個容器中,AVI檔案可能有一個未在DivX中編碼的影片 

  • 發佈於 2021-06-22 12:38
  • 閲讀 ( 44 )
XuXuJunJun
XuXuJunJun

0 篇文章

作家榜

  1. admin 0 文章
  2. 孫小欽 0 文章
  3. JVhby0 0 文章
  4. fvpvzrr 0 文章
  5. 0sus8kksc 0 文章
  6. zsfn1903 0 文章
  7. w91395898 0 文章
  8. SuperQueen123 0 文章

相關推薦