2

sema_init と sem_init の違いは何ですか? それぞれの API に特定の使用シナリオやその他の依存関係はありますか?

4

2 に答える 2

4

これに「linux」のタグを付けたので、他の Unix は無視します。

sema_init は、Linux カーネルのカウンティング セマフォ実装の初期化関数です。
sem_init は、Posix スレッド ライブラリの初期化子です (したがって、ユーザー空間コードで使用されます)。

于 2012-02-07T16:01:29.437 に答える
3
  • sema_init は、Solarisスレッドライブラリからのものです。
  • sem_init は Posix pthreadライブラリからのものです。

スレッドを参照してください: 基本的な理論とライブラリ

于 2010-07-05T11:05:59.737 に答える