현재 pthreads를 사용하는 프로젝트에서 작업하고 있습니다. 지금까지 프로젝트는 사용자가 지정한 수의 스레드를 시작하고 각 스레드에서 작업을 수행 한 다음 닫습니다. 각 스레드는 동적으로 할당 된 메모리 배열에 저장됩니다. 나는이 사용하여 수행pthread 배열에 값을 반환
pthread_create(&(threads[i]), NULL, client_pipe_run, (void *) ¶m[i]);
는 내가 다음에해야 할 것은 이러한 스레드의 반환 값을 저장할 수 있습니다 :
threads = malloc(number_of_threads * sizeof(pthread_t));
int val = *(return_val[0]);
어떤 도움 :
int *return_vals = malloc(sizeof(int) * number_of_threads);
for(i = 0; i< number_of_threads; i++)
{
pthread_join(&(threads[i]),(void *) &(return_vals[i]));
}
가 그럼 난과 비슷한 일을 할 것입니다 반환 값을 얻을 이것은 크게 감사하겠습니다!
이 게시물을 체크 아웃 하시겠습니까? http://stackoverflow.com/questions/2251452/how-to-return-a-value-from-thread-in-c – zzk