#include "pthread.h"
#include "stdio.h"
typedef struct {
int idx, length;
}thread_arg, *ptr_thread_arg;
void *thread_func(void *arg) {
ptr_thread_arg targ = (ptr_thread_arg) arg;
int i;
for(i = targ->idx ; i< (targ->idx + targ->length) ; i++ ) {
printf("Thread %ld – value %d\n", pthread_self(), i);
}
}
int main(){
pthread_t threads[2];
thread_arg arguments[2];
int i;
int threadCriada;
for(i=0; i<2; i++) {
arguments[i].idx = i * 10;
arguments[i].length = 10;
printf("arguments[%d] idx: %d - length: %d \n",i, arguments[i].idx, arguments[i].length);
threadCriada = pthread_create(&(threads[i]), NULL, thread_func, &(arguments[i]));
if(threadCriada){
perror("Erro ao criar o thread");
return 1;
}
}
for(i=0; i<2; i++) {
pthread_join(threads[i], NULL);
}
}
Tagged under: Linguagem C
Exemplo de Thread em C
Assinar:
Postar comentários (Atom)
0 comentários:
Postar um comentário