UdpSocketState.handlePrepare
Handle prepare phase callback from the event loop.
This callback is invoked before each poll operation, allowing us to check for completed overlapped I/O operations. We use GetOverlappedResult with bWait=false to poll without blocking.