pthread-join

    0

    2答えて

    メインスレッドは> 1スレッドを生成し、それぞれのスレッドはエラー値でリターンを呼び出すことができます。このような場合は、他のスレッドが続行することは無意味であり、キャンセルする必要があります。 最初に終了した方のスレッドで参加;: だから、私は私のメインスレッドがしたいです このスレッドがエラーを返したかどうかを確認し、エラーの場合は他のすべてのスレッドをキャンセルします。 ただし、pthrea

    0

    1答えて

    pthread子どもがpthread_createで作成され、結合可能とマークされています。私はpthread_joinを使って次々と彼らを待つかもしれませんが、誰かに参加するのを待っています。 pthreadのどの子が終了したのかをどのように知ることができますか? 唯一の解決策であるpthread_joinを介して1つずつポーリングしていますか?

    0

    1答えて

    マルチスレッドプログラムでは、スレッドによって並列に計算された見積もりに基づいて共有メモリを割り当ててから、すべてのスレッドでその共有メモリを使用する必要があります。スレッドに参加せずに新しいスレッドを生成することなく、そうする方法はありますか? スレッドが共有上で、それらの実行を継続推定サイズの共有メモリを宣言 16のスレッドが並列 に必要なメモリのサイズを見積もる: は、私は以下のようにやろう

    0

    1答えて

    機能するスレッドIDを渡す私は2つの方法で同時キューを実装:は(エンキュー)を追加& は(デキュー)を除去します。 2つのスレッドを使用して実装をテストするには、getRandom()というメソッドで0と1の間に10(NUMBER_OF_OPERATIONS)の乱数を生成しました。これにより、追加および削除操作の異なるディストリビューションを作成することができます。 doWorkメソッドは、スレッ

    1

    2答えて

    したがって、1〜99のランダムな値を持つ2次元配列[5] [12]を作成しているという割り当てがあります。次に、pthreadを使用して、配列の各要素に1を加えたり、1を減算したりして、結果を出力し、プロセスを2、3、または4のスレッドに分割する必要があります。スレッドの数は、ユーザーがコマンドラインで入力した内容によって異なります。コンパイルして実行するコードがあります。しかし、数字の3を入力す

    0

    1答えて

    マルチスレッドを研究しているうちに、次のコードを書きましたが、出力は画面上に表示されませんでした。私はここで間違って何をしていますか? しかし、画面には何も見えず、プログラムは終了しません。 #include <stdio.h> #include <pthread.h> pthread_mutex_t globalMutex[2]; pthread_cond_t globalCondVar

    0

    1答えて

    私はジョブをキューに追加しているプロジェクトがあります。ジョブを取得し、独自の独立した結果を計算する複数のスレッドがあります。 私のプログラムはSIGINTシグナルを処理しますが、スレッドに参加して結果を追加し、画面に出力して終了します。私の問題は、シグナルを送信するときにスレッドが機能しなくなったように見えるか、mutex_lockでブロックされてしまうことです。ここで私のプログラムの重要な部分

    -2

    3答えて

    次のプログラムを実行すると、出力は5になります。 なぜ5ですか?なぜ8ではない? doItで void *doit(void *vargp) { int i = 3; int *ptr = (int*)vargp; (*ptr)++; } int main() { int i = 0; pthread_t tid; pthread_c

    -2

    1答えて

    私はPOSIXのpthreadライブラリを使用して、次のコードを書かれている: #include <stdlib.h> #include <pthread.h> void *thread_function(void *arg) { char *code = "1"; } int main() { int res; pthread_t a_thread; void *th

    0

    1答えて

    私のプロジェクトに問題があります。 それは私にエラーコード3を投げます。 私は私が何をしたかを見せるために私のコードの一部を追加します。 in main.cpp私はスレッドで宣言した後、スレッドを作成するためにinitRequestThreads(thread.h内)に送信します。 main.cppで私はそれを待つメインのプロセスをしましょう。 main.cppに pthread_t *reque