level-triggered تا وقتی داده‌ی نخوانده مانده در هر انتظار descriptor را آماده گزارش می‌کند. edge-triggered فقط یک بار به ازای هر تغییر گزارش می‌دهد، پس باید تا EAGAIN بخوانید وگرنه گیر می‌کنید. در kqueue رفتار شبه‌edge از EV_CLEAR می‌آید.