我在跨xp、linux两个平台使用ruby的UDPSocket通信时,遇到了如下问题:
在windows下运行如下代码接收消息:
require 'socket'socket = UDPSocket.new
socket.bind("1.2.3.4",12345)
loop do
msg, sender = socket.recvfrom(1024)
host = sender[3]
puts "#{Time.now}: #{host} '#{msg}'"
end
在windows程序前面加一句:
Socket.do_not_reverse_lookup = true