Всем привет!
Только начал осваивать программирование под Linux! И сразу непонятки...
Есть простой код:
...
void* thread_func(void*)
{
int i = 0;
for (i = 0; i < 10; i++)
{
sleep(1);
printf("%d", i);
}
pthread_exit(NULL);
}
int main()
{
pthread_t thread_id;
pthread_attr_t pattr;
pthread_attr_init(&pattr);
pthread_attr_setschedpolicy(&pattr, SCHED_OTHER);
pthread_attr_setdetachstate(&pattr, PTHREAD_CREATE_DETACHED)
int p = pthread_create(&thread_id, &pattr, thread_func, NULL);
printf("Thread %d started
: %d\n", thread_id, p);
pthread_join(thread_id, NULL);
printf("Thread %d stopped [code]: %d\n", thread_id, p);
return EXIT_SUCCESS;
}
Вывод программы:
Thread 1077316528 started [code]: 0
А где остальное??? Почему не отрабатывал код в потоковой функции?
Зараннее благодарен!