2

futexとlinuxthreads-0.9が何であるかわからない場合は、返信しないでください。

1つのプログラムfutexベースのミューテックスとlinuxthreads-0.8または-0.9(すべてのglibc <= 2.2およびすべてのuClibcで使用された)のミューテックスを混在させることはできますか?

プロセス間ミューテックス(pshared one、PTHREAD_PROCESS_SHARED)が必要です。

したがって、スレッドがlinuxthreads pthread_managerによって開始および管理される場合、futexベースのスリープとウェイクによって混乱しますか?

プロセス間同期とスレッド間同期の両方にfutexベースのミューテックスを使用できますか?

4

1 に答える 1

2

なぜできなかったのかわかりません。

もちろん、pthreadを使用することはできません。古いミューテックスでpthreadライブラリを使用している可能性があり、他のライブラリにfutexコードが必要です。

明らかに、linuxthreads mutexをロックして、futex関数でロックを解除することはできません。これは機能しません。

しかし、futexを待機しているカーネルで1つのスレッドがブロックされている場合、ディスクI / O操作でブロックされているのとどのように違うのかわかりません。また、linuxthreadsはそれを十分に処理します。

于 2010-02-10T18:14:34.727 に答える