Чтение ожидающих событий управления
#include <sys/asoundlib.h>int snd_ctl_read( snd_ctl_t *handle,snd_ctl_callbacks_t *callbacks );
libasound
Функция snd_ctl_read() считывает ожидающие события управления, ассоциированные с дескриптором handle. Для каждого считанного события производится поиск соответствующей callback-функции в стркутуре callbacks. Если подходящий callback найден, он вызывается. Обычно snd_ctl_read() вызывается при возвращении управления от select().
![]() | Если приложение зарегистрировалось на получение событий (например, при использовании select()), очень важно производить очистку событий в очереди через snd_ctl_read(). Выполнять это следует даже в том случае, если не требуется информация о самом событии. Очереди сообщений не имеют ограничений на размер, что может вызывать проблемы при из неконтролируемом росте. Наиболее удачной практикой является обработка уведомлений по мере их поступления, не давая им накапливаться. |
ЗОСРВ «Нейтрино»
snd_ctl_callbacks_t, snd_ctl_file_descriptor(), snd_ctl_open(), select()
Предыдущий раздел: Библиотека libasound