UNIXプログラミング質問すれ Part7
レス数が950を超えています。1000を超えると書き込みができなくなります。
0970965
2006/05/15(月) 23:22:39ありがとうございます.調べてみたところ,
名前付きセマフォ: カーネル内にロック情報を保持
メモリベースセマフォ: プロセス共通のSharedMemory内にロック情報を保持
SysVセマフォ: カーネル内にロック情報を保持
pthread_mutex: プロセス共通のSharedMemory内にロック情報を保持
pthread_rwlock: プロセス共通のSharedMemory内にロック情報を保持
って感じでになってて,プロセスの異常終了時のロックの
解放に関してはそれぞれ特徴があるみたいですね.
ロック期間中に変更したデータの整合性に関しては
プログラマ側に任されているみたいで,安全性に関しては
等価な印象です(間違ってたら指摘お願いします).
追加質問なのですが,FreeBSDもLinuxもセマフォに関しては
扱える上限数がカーネル設定で固定されているようです.
これを考えるとメモリアル限り自由にロックの粒度を
細かくできるmutexの方が使いやすいと思うんですが,
どうなんでしょう?
レス数が950を超えています。1000を超えると書き込みができなくなります。