併發程序同步

2021-10-07 09:32:16 字數 778 閱讀 2343

p是荷蘭語proberen(測試)的首字母。為阻塞原語,負責把當前程序由執行狀態轉換為阻塞狀態,直到另外乙個程序喚醒它。也就是不好的一方面。

v是荷蘭語verhogen(增加)的首字母。為喚醒原語,負責把乙個被阻塞的程序喚醒,它有乙個參數列,存放著等待被喚醒的程序資訊。也就是變好的一方面。

解:設三個訊號量s、so、sa;訊號量s表示盤子是否為空,其初值為1;訊號量so表示盤中是否有桔子,其初值為0;訊號量sa表示盤中是否有蘋果,其初值為0。同步描述如下:

解:司機和售票員的活動得同步,如下所示

司機售票員

啟動車輛

關車門正常行車

售票到站停車

開車門設兩個訊號量s1,s2;

s1表示是否執行司機啟動汽車,其初值為0

s2表示是否執行售票員開門,其初值為0

用p、v原語描述如下:

int s1=0;

int s2=0;

main()

driver()

}busman()

}

未完待續。。。

理解併發程序

說說你對順序程式設計與併發程式設計的理解。並舉乙個例子進行說明 順序程式設計 嚴格按照順序執行,不受外界因素影響,所以不會對結果產生影響。和程式設計思想一樣,自上而下順序執行。舉例 超市排隊買單,每個人按先後順序排隊,每個人所購買的商品不同,但是他們都需要買單,才能走出商場。併發程式設計 併發程式不...

理解併發程序

順序程式設計 1 執行的順序性 即乙個程式在處理器上是嚴格按照順序執行的,每個操作必須在乙個操作開始之前結束 2 環境的封閉性 程式執行獨佔全機資源,注意,是全機資源!後面我們可以看到和併發設計的不同點 3 過程的可再重現性 簡單點說就是不管你的計算機配置高還是配置低 什麼時候執行 什麼地方執行,它...

理解併發程序

順序程式設計 程式順序執行是指其在處理器上的執行是嚴格有序的,即只有在前乙個操作結束後才能開始後續操作。如果有多個程式,這些程式必須按照呼叫次序嚴格有序執行。而且這些程式如果中斷,這是允許的,但不停止,中斷不會對程式最終造成影響,也就是說程式執行結果與執行速度無關。舉例 按順序從上往下求解過程雞兔同...