Как получить количество данных в очереди для сокета UDP?
Чтобы увидеть, насколько хорошо я справляюсь с обработкой входящих данных, я бы хотел измерить длину очереди в моих сокетах TCP и UDP.
Я знаю, что могу получить размер очереди черезSO_RCVBUF
опция сокета, и этоioctl(<sockfd>, SIOCINQ, &<some_int>)
говорит мне информацию для TCP сокетов. Но для UDPSIOCINQ
/FIONREAD
ioctl возвращает только размер следующей ожидающей дейтаграммы. Есть ли способ, как получить размер очереди для UDP, без необходимости разбирать системные таблицы, такие как/proc/net/udp
?