thread_join.c
来自「pthread的例子程序」· C语言 代码 · 共 39 行
C
39 行
#include <stdio.h>#include <pthread.h>#define NTHREADS 10void *thread_function();pthread_mutex_t mutex1 = PTHREAD_MUTEX_INITIALIZER;int counter = 0;main(){ pthread_t thread_id[NTHREADS]; int i, j; for(i=0; i < NTHREADS; i++) { pthread_create( &thread_id[i], NULL, &thread_function, NULL ); } for(j=0; j < NTHREADS; j++) { //pthread_join( thread_id[j], NULL); } /* Now that all threads are complete I can print the final result. */ /* Without the join I could be printing a value before all the threads */ /* have been completed. */ printf("Final counter value: %d\n", counter);}void *thread_function(){ printf("Thread number %ld\n", pthread_self()); pthread_mutex_lock( &mutex1 ); counter++; pthread_mutex_unlock( &mutex1 );}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?