5

2 つのプロセスを同期するために posix セマフォを使用する計画。名前付きか名前なしのどちらを使用するかはよくわかりません。

それぞれの長所と短所は何ですか?どちらを使用するかをどのように決定しますか? どちらの状況で、一方が他方よりも望ましいですか?

ありがとう。

4

1 に答える 1

3

2 つのプロセスが関連していない場合は、名前付きセマフォを使用する必要があります。2 つのプロセスが関連している (つまり、分岐している) 場合、またはスレッド間でセマフォを使用しているだけの場合は、unnamed を使用する必要があります。

名前なしの利点は、名前や権限を追跡したり、リンクを解除したりする必要がないことです。また、名前のないセマフォは、同じプロセスのスレッド間で共有されている場合に単純なグローバル変数 (またはヒープ上) として使用したり、フォークされた場合に子によって継承される共有メモリに配置したりできます。処理する。

于 2012-08-03T06:20:12.090 に答える