Provided by: manpages-ru-dev_4.21.0-2_all ![bug](/img/bug.png)
![bug](/img/bug.png)
ИМЯ
pthread_yield - освобождает процессор
LIBRARY
POSIX threads library (libpthread, -lpthread)
СИНТАКСИС
#define _GNU_SOURCE /* Смотрите feature_test_macros(7) */ #include <pthread.h> [[deprecated]] int pthread_yield(void);
ОПИСАНИЕ
Note: This function is deprecated; see below. Функция pthread_yield() заставляет вызывающую нить освободить процессор. Нить помещается в конец очереди выполнения согласно её статическому приоритету, и управление передаётся другой нити. Дополнительную информацию можно найти в sched_yield(2).
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ
При успешном выполнении pthread_yield() возвращается 0; при ошибке возвращается номер ошибки.
ОШИБКИ
В Linux эта функция всегда выполняется успешно (но в переносимых приложениях нужно учитывать возможность возврата ошибки).
ВЕРСИИ
Since glibc 2.34, this function is marked as deprecated.
АТРИБУТЫ
Описание терминов данного раздела смотрите в attributes(7). ┌───────────────────────────────────────────────────────┬──────────────────────┬──────────┐ │Интерфейс │ Атрибут │ Значение │ ├───────────────────────────────────────────────────────┼──────────────────────┼──────────┤ │pthread_yield() │ Безвредность в нитях │ MT-Safe │ └───────────────────────────────────────────────────────┴──────────────────────┴──────────┘
СТАНДАРТЫ
Эта функция является нестандартной, но присутствует в некоторых других системах. Вместо неё используйте стандартный вызов sched_yield(2).
ЗАМЕЧАНИЯ
В Linux эта функция реализована как вызов sched_yield(2). Функция pthread_yield() предназначена для использования с алгоритмами планирования реального времени (т. е., SCHED_FIFO или SCHED_RR). Использование pthread_yield() с недерминированными алгоритмами планирования, такими как SCHED_OTHER, не определено и указывает на, вероятно, неправильно разработанное приложение.
СМ. ТАКЖЕ
sched_yield(2), pthreads(7), sched(7)
ПЕРЕВОД
Русский перевод этой страницы руководства был сделан Alexey, Azamat Hackimov <azamat.hackimov@gmail.com>, kogamatranslator49 <r.podarov@yandex.ru>, Kogan, Max Is <ismax799@gmail.com>, Yuri Kozlov <yuray@komyakino.ru> и Иван Павлов <pavia00@gmail.com> Этот перевод является бесплатной документацией; прочитайте Стандартную общественную лицензию GNU версии 3 ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ или более позднюю, чтобы узнать об условиях авторского права. Мы не несем НИКАКОЙ ОТВЕТСТВЕННОСТИ. Если вы обнаружите ошибки в переводе этой страницы руководства, пожалуйста, отправьте электронное письмо на ⟨man-pages-ru-talks@lists.sourceforge.net⟩.