同步和互斥的關係

2021-07-16 08:47:01 字數 506 閱讀 5551

相交程序之間的關係主要有兩種,同步與互斥。所謂互斥,是指散步在不同程序之間的若干程式片斷,當某個程序執行其中乙個程式片段時,其它程序就不能執行它 們之中的任一程式片段,只能等到該程序執行完這個程式片段後才可以執行。

所謂同步,是指散步在不同程序之間的若干程式片斷,它們的執行必須嚴格按照規定的 某種先後次序來執行,這種先後次序依賴於要完成的特定的任務。

顯然,同步是一種更為複雜的互斥,而互斥是一種特殊的同步。

也就是說互斥是兩個執行緒之間不可以同時執行,他們會相互排斥,必須等待乙個執行緒執行完畢,另乙個才能執行,而同步也是不能同時執行,但他是必須要安照某種次序來執行相應的執行緒(也是一種互斥)!

總結:互斥:是指某一資源同時只允許乙個訪問者對其進行訪問,具有唯一性和排它性。但互斥無法限制訪問者對資源的訪問順序,即訪問是無序的。

同步:是指在互斥的基礎上(大多數情況),通過其它機制實現訪問者對資源的有序訪問。在大多數情況下,同步已經實現了互斥,特別是所有寫入資源的情況必定是互斥的。少數情況是指可以允許多個訪問者同時訪問資源。

程序同步和互斥的關係

程序的同步和互斥是併發程序的兩種重要的關係,程序互斥反映了程序間的競爭的關係,程序同步反映了程序間協作的關係,從以上對程序互斥和同步的分析中,程序互斥其實就是一種特殊的程序的同步,例如,程序的互斥是程序之間對臨界區的一種排他訪問,當有乙個程序在臨界區是,其他的程序不允許進入臨界區。當在臨界區中的 程...

互斥和同步

1.原子操作 乙個和多個指令的序列,對外是不可分的,即沒有程序可以干預此操作。2.臨界區 是段 在這段 中程序將訪問共享資源,將會產生競爭,所以只能在乙個程序中執行。3.死鎖 兩個或者兩個以上程序都在等待其他程序做完某事,此時都處於等待狀態,產生死鎖。4.活鎖 兩個或者兩個以上程序為響應其他程序中的...

同步和互斥

臨界資源 對多個程序或者執行緒都可見的資源,容易造成爭奪的資源,稱之為臨界資源。臨界資源可能會造成程式執行的混亂。臨界區 對臨界資源進行操作的 區域稱之為臨界區,指的是一段執行 解決資源爭奪問題 同步或者互斥 同步 同步是一種合作關係,為了完成某種任務而建立的多個程序或者執行緒之間的協調呼叫,次序等...