UDP socket delay

I'm trying to recieve syslog messages under windows.
This code works, but it takes about 5 seconds to recieve the message.
---8<---
require 'socket'

thread = Thread.new do
    socket = UDPSocket.new
    socket.bind('', 514)
    while true
        if IO.select([socket], nil, nil, 0)
            p socket.recvfrom(1024)
            break
        end
    end
end

thread.join
---8<---
I also tested other non-ruby programs and they seem to recieve this faster.
Can I speed things up, or is this normal?

Roeland