futex

    0

    2答えて

    グローバルファイル記述子でfcloseを呼び出すと、プログラムがハングします。 これは、クローンによって作成された複数のスレッドの終了後に発生しました。以下は 配列であるFIDと FILE * fid = fopen("filename", "w"); ... for(int i=0; i<4; i++){ clone((int (*)(void*))do_work, stack[i], C

    24

    1答えて

    私はstraceのを使用してプロセスを追跡しているとのようなエントリを見てきました:私は私だけなFUTEX_WAITやFUTEX_WAKEなどの項目を見てきましたman page for futexを見たときに、しかし futex(0x7ffff79b3e00, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x7ffff79b3e00, FU

    6

    2答えて

    無関係なプロセスはフューテックスを使用してどのように連携できますか? 私は無関係なプロセスを持っているとしましょう。一つは、モジュールとApacheのサブプロセスです。背景のスクリプト。 私は、フューテックスを使用して2つの間のミューテックスで条件変数を確立して、ユーザスペースの高速コードパスの利益を得たいと考えています。 mutexが格納されているメモリはmmapのファイルにある可能性があります

    1

    2答えて

    この方法(私は機能がいくつか追加のパラメータを必要とする場合があります実現): void waitUntilNotEqual(volatile int* addr, int value) { while (*addr == value) {} }

    14

    1答えて

    Linuxのフューテックスが競合すると、システムはスピンロックに多くの時間を費やすことがわかりました。フューテックスが直接使われていなくても、malloc/free、rand、glib mutex呼び出し、futexを呼び出すシステム/ライブラリ呼び出しを呼び出すときにも問題であることに気付きました。 ありますか?この動作を取り除く方法はですか? カーネル2.6.32-279.9.1.el6.x8

    1

    3答えて

    ほんの少しのOMPテストを書き、それが正しく、すべての時間を動作しませんがフリーズこの例では、しかし はJ の唯一の非決定的な値がなければならない私は凍結しています。 4コアx86_Core2 Linuxサーバ上のgcc-4.3.1 -fopenmp a.c -o gcc -static 実行でコンパイル:(時々; 4-5ファストランの1回の凍結など)$ ./gcc、凍結を得ました。 strace

    0

    1答えて

    共有メモリに格納されたrwlockオブジェクトを使用する同じプロセス内の2つのスレッドは、pthreadsストレステスト中にクラッシュします。メモリの破損やデッドロックを見つけようとしばらく時間を費やしましたが、これまでのところ何もありませんでした。私はデッドロックを作成したことを通知する最適ではない方法ですか?これをデバッグするためのツール/メソッド上のポインタ? Thread 5 "tms

    2

    1答えて

    私はマルチスレッドのLinuxプロセスで、特定のスレッドが数秒間実行されないように見える問題をデバッグしています。 strace出力を見ると、futexを待つことが明らかになった。 1673109 14:36:28.600329のfutex(0x44b8d20、FUTEX_WAIT_PRIVATE、:36:33.221850 < ...のfutexは>再開)= 0 < 4.621514> は、どの

    1

    2答えて

    を探す:ここ 23321 07:49:57.925037 futex(0x23b2c20, FUTEX_WAIT_PRIVATE, 0, NULL <unfinished ...> 23321 07:50:12.435793 <... futex resumed>) = 0 を、スレッドがいくつかのロック(または条件変数に14.4秒を待っていました)。 ロックがPythonコードまたはいくつ

    5

    1答えて

    Linux futex syscall(FUTEX_WAIT操作)で問題が発生しました。ドキュメントには、(FUTEX_WAKEを除いて)早期に戻る可能性のある条件が指定されていますが、これらのすべてに0以外の戻り値が含まれます。フューテックスアドレスの値が一致しない場合、タイムアウト待ちの場合はETIMEDOUT、タイムアウトの場合はEINTR返り値が0になっています。FUTEX_WAKE以外の