类函数未通过套接字调用



我正在尝试编写服务器。

require 'socket'
server = TCPServer.open(2000)
loop {
Thread.start(server.accept) do |client|
client.puts(Time.now.ctime)
class DisplayMsg
def self.msg(msg)
client.puts msg
client.close
end
end
client.puts "Select 1,2,3"
while user_input = client.gets.chomp
case user_input
when "1"
client.puts "Hello"
when "2"
client.puts "Alo"
when "3"
DisplayMsg.msg("Exiting")
end
end
end
}

当我尝试通过调用类中定义的函数来Exit时,它可以工作。在那里,程序挂起并等待。

我的猜测是没有调用该函数,因为当我将对该函数的调用与client.puts交换时,它可以工作。

任何帮助/指示不胜感激。

启动子线程时,主线程不会等待子线程结束,而是在子线程完成其作业之前完成,除非您join子线程。

最新更新