タグ

pthreadに関するchorinskyのブックマーク (2)

  • マルチスレッドプログラミング (POSIX、Win32)

    このページではマルチスレッド、プロセス間通信、スレッド間通信およびタイマープログラミングについて紹介します。(いやー。好きだなこういう話題は。) 記述例およびサンプルに含まれるファイルの全部、または一部を使用したことによる損害等について、一切の責任を負いません。また、サンプルの文字コードはS-JISで提供しますので、ご使用の際はWindowsからFTPするなどして適切な文字コードに変換してください。尚、サンプル中には説明の簡略化のため意味のないコードや、実用上問題のあるコードも含まれていますのでご注意ください。 [POSIX]pthread_create [POSIX]スレッドの同期(ミューテックス) [POSIX]タイマー [WIN32]_beginthreadex [WIN32]スレッドの同期(ミューテックス) [WIN32]共有メモリ [WIN32]スレッドの同期(イベント) [PO

  • マルチスレッド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