問題タブ [pthread-join]

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.

0 投票する
3 に答える
986 参照

c - スレッドから単一の整数値を返す

スレッドから整数値を返すのに助けが必要です。私はいくつかのことを試しましたが、それを機能させることができません。私はCが初めてで、はい、これは宿題ですが、行き詰まっており、これについて助けが必要です. スレッドでポインターを作成しましたが、それをメインに戻すと、正しい値が表示されません。私はmallocを試しましたが、それもうまくいきません。ヒントをいただければ幸いです。

コードは次のとおりです。

0 投票する
2 に答える
5338 参照

c - pthread_join によりセグメンテーション エラーが発生する (単純なプログラム)

マルチスレッド プログラムを操作しようとしていますが、pthread_join 関数に問題があります。以下のコードは、pthread_join のクラッシュを示すために使用している単純なプログラムです。このコードからの出力は次のようになります。

pthread_join でセグメンテーション違反が発生する原因は何ですか?

0 投票する
1 に答える
363 参照

c - pthread の統計エラー (S_ISDIR が機能しない)

現在、新しいサブディレクトリごとにスレッドを作成し、そのスレッドを使用してサブディレクトリのサイズを見つけることにより、ディレクトリツリーのサイズとその中のすべてのサブディレクトリのサイズを見つけるプログラムを作成しようとしています。これは非常に単純なプログラムですが、デバッグするのは非常に困難です。S_ISDIR が意図したとおりに機能しないという問題が山ほどあります (通常のファイルが if ステートメントを渡し、プログラムが dir を通常のファイルに変更しようとしています)。以下は、私が問題のために持っているコードです。サブディレクトリが終了するまで各親ディレクトリを待機させたいのですが、各サブディレクトリを次のディレクトリまで待機させたくありません。

主に、関数 findSize とユーザーが渡すパスを使用して pthread_create を実行するだけです。多くの統計エラーが発生しますが、それらを修正する方法がわかりません..

0 投票する
1 に答える
281 参照

c# - 参加後にスレッドが起きない

開始ボタンとキャンセル ボタンを備えた GUI インターフェイスがあります。開始後、GUI スレッドであるメイン スレッドは、実際の作業を行う 2 番目のスレッドを作成します。キャンセルボタンを押すと、作業スレッドに作業を停止して終了するように指示するブール値が設定されるだけです。問題は、作業スレッドが作業を終了したと確信しているにもかかわらず、メインの GUI スレッドがスタックしたままになることです。何故ですか?

コードの一部を次に示します。

join を呼び出した後にメインスレッドが起動しない理由を誰かが知っていますか? keepWorking 変数を手動で false に変更し、メソッドが最後に到達した場合にどうなるかを確認するために、デバッグも試みました。

0 投票する
1 に答える
557 参照

c - c の Pthread_join & Pthread_exit

Q.1) 最初の 2 つの値に対して常にジャンク値が出力されます。なぜそうなのですか?ここで何か間違っている場合は修正してください。

以下のようにコードを変更すると、1,2,3,4,5 が正しく出力されます。

Q.2) スレッドから値を返すさまざまな方法は何ですか? すべての方法を例を挙げて要約し、どの方法に従うべきかを説明していただけますか?

0 投票する
2 に答える
246 参照

c - 実行時にグローバル 2D 配列のセグメンテーション違反で Pthreads が更新される

こんにちは。お時間をいただきありがとうございます。

いくつかのコマンドを実行するプログラムを並列化しようとしていますが、pthreads が良い選択肢になると思いました。

しかし、私はいくつかの問題に直面しています。

ここからスレッドを開始します。

依存関係テーブルはそのまま保存されます

コマンド用

コマンド 2 と 3 で「hello」が使用されているため、3 は 2 に依存しているため、次のようになります。

したがって、2 の前に 3 を実行しません。

2 が実行された後、その行を 0 に設定するため、3 はそれに依存しなくなります

書き込み/書き込みの競合がないため、いかなる種類のブロッキングも実装していません。

書き込みの前に読み取りが行われる競合状態が発生する可能性がありますが、スレッドの実行を遅らせるだけなので問題ありません。

これは pthreads プログラムです:

これらは私のグローバル変数です

global_tableしかし、からアクセスしようとするとparallelexecute、あらゆる種類の奇妙な値が得られ、その理由がわかりません。

したがって、「グローバルテーブル」は構造体です。

そして、各スレッドは の行dependency tableと の行にのみ書き込みます。status_table

進め方がよくわかりません。

また、サポート機能の正確性についてもある程度確信を持っています。

どんな助けでも大歓迎です。

0 投票する
12 に答える
117937 参照

java - Java マルチスレッドの概念と join() メソッド

join()Javaのスレッドで使用されるメソッドに混乱しています。次のコードでは:

このプログラムの出力例を次に示します。

上記のコードでは:

  1. 私はプログラムの実行の流れを理解することができません.そして、作成されたときにob1コンストラクターが呼び出され t.start()ます. では、なぜこれが起こっているのですか?run()main()

  2. join()メソッドは、それが呼び出されたスレッドが終了しないまで待機するために使用されますが、ここで出力にスレッドの代替出力が表示されるのはなぜですか??

そして、の使用joinがこれである場合、の使用は何synchronizedですか??

ここで基本的な概念が欠けていることは知っていますが、理解できないので助けてください。