0

サーバー/クライアント プログラムを実行していますが、理解できないエラーが表示され続けます。

FishClientRun.rb:18:in `<main>': undefined method `chomp' for nil:NilClass (NoMethodError)
Shizuo:FISHGAME2 macowner$ 

ただし、コードは 1 回実行されます。実際にカードを受け取り、問題なく保管します。クライアントが戻ってくると、ループに戻り、get ステートメントでハングincoming = client.socket.gets.chompします。.chomp. が好き.chompではありませんclient.input_decision(incoming).

私の顧客:

client = ClientClass.new('localhost', 2012)

while true
    puts "IN WHILE TRUE!!!"
    incoming = ""
    incoming = client.socket.gets.chomp
    puts "INPUT RECEIVED:::::::: #{incoming}"

    client.input_decision(incoming)
end

これがサーバーです。この部分は大丈夫だと思います:

server = SocketServerClass.new(2012, number_of_players)

number_of_players.times do 
    server.accept_client(server.fish_game)
end
puts "Clients accepted"

server.update_client_cards(server.fish_game)
puts "client cards sent to server"

while true
sleep(10)
break
end
4

1 に答える 1

2

getsnilファイルの終わりに遭遇した場合に戻ります。おそらく、その時点で終了したいと思うでしょう。

于 2014-01-05T15:20:06.313 に答える