Итак, у меня есть следующий код, часть его опущена, чтобы его было легче понять.
for (unsigned int t = 0; t < NUM_THREADS; t++)
{
if (pthread_create(&threads[t], NULL, thread_run, (void*) &threadData) != 0)
{
perror("pthread_create");
}//end if
}
for (unsigned int z = 0; z < NUM_THREADS; z++)
{
if (pthread_join(threads[z], NULL) != 0)
{
perror("pthread_join");
}
}
Моя проблема - это функция соединения, она пропускает первый созданный мной поток и продолжает работу.Текущее решение, которое у меня есть, это добавление дополнительной нити и не заставлять первую делать какую-либо работу.
Есть идеи, почему это может происходить?