タグ

ブックマーク / linuxgcc.sytes.net (1)

  • マルチスレッド3:スレッドへの値の渡し方

    pthread_create()の第4引数のvoid*はそのまま新スレッドの引数になります。 void*となっていますが別にintを渡してもかまいません。 void* threadfunc(void* p) { int a = (int)p; .... } int main() { pthread_create(thread, NULL, threadfunc, (void*)100); .... } intのような値型を渡すときは特に注意することはありませんが、ポインタを渡す場合は 注意が必要です。 void* threadfunc(void* p) { int a; struct data* pdata = (struct data*)p; a = pdata->a; ... } void func() { struct data d; d.a = 10; pthread_create

  • 1