Перейти к содержанию

pthread функции


Рекомендуемые сообщения

Всем привет!

Только начал осваивать программирование под 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

А где остальное??? Почему не отрабатывал код в потоковой функции?

Зараннее благодарен!

Ссылка на комментарий
Поделиться на другие сайты

  • 1 месяц спустя...

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...