Подтвердить что ты не робот

Pthread sleep linux

Я создаю программу с несколькими потоками, используя pthreads.

Является sleep(), заставляя процесс (все потоки) прекратить выполнение или просто поток, на который я звоню sleep?

4b9b3361

Ответ 1

Просто поток. Документация POSIX для sleep() говорит:

Функция sleep() должна вызывать приостановку вызова потока из выполнения...

использование: sleep(10) в течение 10 секунд сна.

Ответ 2

Попробуйте это,

#include <unistd.h>

usleep(microseconds);

Ответ 3

Обычно я использую nanosleep, и он отлично работает. Nanosleep поддерживает выполнение вызывающего потока. У меня было такое же сомнение, потому что на некоторых страницах человека сон относится ко всему процессу.