From: Yutaka Kato Date: 2010-01-13T10:13:15+09:00 Subject: [ruby-list:46764] UDPSocketのrecvfromで長いデータを受け取りたい 加藤と言います。 UDPSocketを使って、UDPでのechoクライアントを作っているのですが、 データの受け取り recvfrom(maxlen) で、maxlenより長いデータの 受け取りをやるにはどうすればいいのでしょうか。whileループで、 繰り返しrecvfromを実行したのですが、データをすべて受け取って くれません。 過去ログを調べたら、ruby-list:5875で、UDPSoketクラスのサンプル コードがありました。それを書き換えて、下記のコードを実行して みましたが、結果が 1234567890 になり、2番目のrecvfromが実行されていないようです。 よろしくお願いします。 #!/usr/bin/ruby require 'socket' include Socket::Constants s = UDPsocket.new s.send("12345678901234567890\r\n", 0, "localhost", "echo") print s.recvfrom(10)[0] + "\n" print s.recvfrom(10)[0] + "\n"