#include <assert.h>
#include <pthread.h>
pthread_t *thread_array = NULL;
int main(){
thread_array
= (pthread_t*) malloc(sizeof(pthread_t) * thread_num);
for(I
= 0; I < thread_num; ++i){
int
rc = pthread_create(thread_array+i, &attr, analyzer, (void *) i);
assert(rc
== 0);
}
for(I
= 0; I < thread_num; ++i){
pthread_join(thread_array[i],
NULL);
}
return
0;
}
pthread_mutex_t mutex1 = PTHREAD_MUTEX_INITIALIZER;
pthread_mutex_lock(&mutex1);
pthread_mutex_unlock(&mutex1);
pthread_mutex_init(&mutex2, NULL);
pthread_mutex_destroy(&mutex2, NULL);
int pthread_create(pthread_t *thread,
const pthread_attr_t *attr,
void *(*start_routine) (void *),
void *arg);
int pthread_join(pthread_t thread, void **retval);
pthread_t thread1;
pthread_create(&thread1, NULL, function, arg);
pthread_join(thread1, NULL, function, arg);
pthread_t thread_array1[i];
pthread_t *thread_array2 = NULL;
thread_array2 = (pthread_t*) malloc(sizeof(pthread_t) *
thread_num);
pthread_create(thread_array+i, &attr,
analyzer, (void *) i);
pthread_join(thread_array[i], NULL);
pthread_attr_t attr;
pthread_attr_init(&attr);
pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_JOINABLE);
pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
pthread_create(thread_array+i, &attr,
analyzer, (void *) i);
pthread_attr_destroy(&attr);
沒有留言:
張貼留言