hen there are multiple consecutive AVAILABLE_FOR_READ items for the same fd in WorkQueue, join them.
in case of a sequence of incoming packets for a socket, the server thread will put several AVAILABLE_FOR_READ items for the same socket on the deque of WorkQueue instance.
The listener thread will get the first AVAILABLE_FOR_READ event for the socket and read all the packets. Thus the successive AVAILABLE_FOR_READ items will all get a -1 EAGAIN or EWOULDBLOCK error. This can be improved by joining together all the AVAILABLE_FOR_READ items in the queue with a single AVAILABLE_FOR_READ event.
hen there are multiple consecutive AVAILABLE_FOR_READ items for the same fd in WorkQueue, join them.
in case of a sequence of incoming packets for a socket, the server thread will put several AVAILABLE_FOR_READ items for the same socket on the deque of WorkQueue instance.
The listener thread will get the first AVAILABLE_FOR_READ event for the socket and read all the packets. Thus the successive AVAILABLE_FOR_READ items will all get a -1 EAGAIN or EWOULDBLOCK error. This can be improved by joining together all the AVAILABLE_FOR_READ items in the queue with a single AVAILABLE_FOR_READ event.