2016-07-20 9 views
0

私は連続したID番号を持つスレッドをCで作成しようとしています。 例えば、10個のスレッドを作成したいとしましょう。その後、それらのIDに1〜10のIDを与えたいとしましょう。後で、これらのIDにアクセスしてスレッド関数から出力することができます。これは実現可能ですか?連続したIDを持つcでスレッドを作成するには?

私はこれが単純なように思えるかもしれないが、私はどこでもこのソリューションを見つけることができなかった。

ありがとうございました

答えて

3

スレッドIDは、OSまたはスレッドライブラリによって作成されます。あなたは彼らが何であるかを制御することはできません。

IDを連続させる必要はありません。配列を作成し、各スレッドのIDを配列に格納します。次に、配列を使用して順番にアクセスすることができます。 (あなたがpthreadsを使うと仮定して)このような

何か:

pthread_t thread_list[100]; 
int thread_count = 0; 

... 

pthread_create(&thread_list[thread_count++], NULL, thread_function, NULL); 
+0

はありがとうございます。最後のコメントで少し詳しく説明できますか: "アレイを作成し、各スレッドのIDを配列に格納します。次に配列を使用して順番にアクセスできます。 もう一度ありがとうございます。 –

+0

@OmarHijazi更新情報を参照してください。 – dbush

+0

実際にスレッド番号を出力します。スレッド55が実行中の場合私は印刷したい:スレッドからのこんにちは:55.それは可能ですか? –