我正在尝试在我的 Ruby 脚本中使用 UnixSocket,以便让多个进程相互通信。
但我不明白为什么 ii 只能向监听过程发送一条消息。仅限于我所拥有的基础知识:
服务器
require 'socket'
server = UNIXServer.open('/tmp/scanlcd_test.sock')
while true do
client = server.accept
puts "I got: " + client.readline
end
server.close
客户:
require 'socket'
client = UNIXSocket.open('/tmp/scanlcd_test.sock')
client.puts "1"
sleep 9
client.puts "2"
client.puts "3"
client.puts "4"
结果是:
./server.rb
I got: 1
就是这样……最后 3 个 put 不见了……有什么问题吗?