Чтобы дать немного больше контекста ...
Один из ожидаемых сценариев с kevent () заключается в том, что вы будете выполнять потоковые вызовы к нему.Если у вас было 3 пула потоков, все из которых запрашивали 4 события, ОС хотела бы иметь возможность объединять и отправлять фактические события по своему усмотрению.
Если доступно 7 событий, ОС может захотеть отправить 3 потокам, или она может отправить все 3 потока, если считает, что у нее пустые ядра и меньше служебных данных.я не говорю, что ваш сценарий недействителен вообще;Просто система более или менее предназначена для того, чтобы держать эту информацию подальше от вас, чтобы она не попадала в сценарии «хорошо», 12 дескрипторов готовы.О, хм, я только что сказал вам, что 3 из них всплыли до того, как вы успели что-нибудь сделать ».Вы регистрируете / отменяете регистрацию своих дескрипторов один раз, и соответствующий дескриптор будет возвращен вам с событием, когда событие сработает.