問題タブ [binary-semaphore]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
multithreading - Cのスレッドとセマフォ
おはようございます。セマフォ c ライブラリを使用して、2 つのスレッド t1 と t2 を実行しようとしています。私はこのコードを書きました
コードはバグなしで動作しますが、クリティカル セクションに入る 2 つのスレッドを取得しました。最初のスレッドが 100 の値を表示し、スレッド 2 が 200 まで他の値を継続することを希望します。
c - C でセマフォを使用してスレッドの順序を制御する
私は C が初めてで、Pacheco の本「並列プログラミング入門」のこのコードを実行しようとしています。でセマフォの初期化を実装する方法がわかりませんmain()
。&semaphores[dest]
と&semaphores[my_rank]
配列ですか?
C コード:
出力配列をファイルに書き込もうとしているときに、このタイプの順序メカニズムを実装したいと考えています。これが私のコードです:
}
のセマフォの初期化main()
:
私はそれをグローバル変数としても持っています:
プログラムはコンパイルされますが、次のエラーが表示されます。
どんな助けでも大歓迎です。
c - C のスレッドを使用してコード「ダブル フリーまたは破損 (アウト)」をコンパイル中にエラーが発生しましたか?
pthreads を使用してエボラ シミュレーションを実行しようとしています。セマフォ部分まではすべてうまくいきました。コードのコンパイル中に次のエラーが発生します。
これは私のコードです:
timer.h ファイルは次のとおりです。
どんな助けでも大歓迎です。ありがとう
c - Semaphore/Mutex と Printf 間の同期
私は、Operative System コースのセマフォと同期に関する演習 (以下の太字を参照) に取り組んでいます。演習のテキストは次のとおりです。
Pthread セマフォとミューテックス
C プログラム gen_binary_numbers.c は、コマンド ラインで整数 n を受け取り、再帰を使用して n ビットのすべての 2 進数を生成して表示します。再帰的なプログラムを並行プログラムに変換し、再帰的な手順を、2 進数を (任意の順序で) 表示する適切な数のプロセスの生成に置き換えます。
これは実際には私のコードです:
コードは正しい解を返すはずだと思いますが、出力が正しい数値を返さないことがあります。
正しい出力の例:
誤った出力の例 (重複による):
問題は、ミューテックスとprintfの間の同期にあると思います。混乱を招く結果を避けるための代替ソリューションはありますか?