===== receive_w_tmo ===== ==== Синтаксис ==== union SIGNAL *receive_w_tmo(OSTIME timeout, const SIGSELECT *sigsel); ==== Описание ==== Принимает сигнал с таймаутом. Работает как receive, кроме того, что время ожидания ограничено указанным значением.\\ Если запрошенный сигнал не пришёл за указанное время, функция возвращает нулевой указатель.\\ Указанное значение таймаута приводится к размеру системных тиков по следующим правилам: * если передан 0, возврат из функции происходит немедленно * если задано значение меньшее или равное одному системному тику, возврат происходит при следующем таймерном событии (до следующего тика). * значение больше одного системного тика будет округлено в большую сторону до ближайшего числа системных тиков. Реальное значение задержки может варьироваться между вычисленным значением числа тиков и этим же значением, меньшим на один тик. Как результат, реальная задержка может быть вплоть до одного тика короче указанной. ==== Параметры ==== * **timeout** - число миллисекунд для ожидания. * **sigsel** - указатель на массив номеров сигналов, которые будут приниматься. ==== Возвращаемое значение ==== Функция возвращает указатель на буфер сигнала или нулевой указатель, если за указанное время не получено ни одного сигнала. ==== См. также ==== [[alloc]], [[free_buf]], [[receive]], [[send]], [[sender]]