読者です 読者をやめる 読者になる 読者になる

UDP で How are you? な挨拶をしてみた2

ということで、送信をやるよ〜。

                send_bytes = encoding.GetBytes( greeting );
                done = client.BeginSend( send_bytes, send_bytes.Length, sendCompleted, client );

greeting をバイトに変換して、送信するよ。
いや、ほんとにそれだけなんだけど、sendCompleted メソッドもこんな感じだし:

        public void sendCompleted(IAsyncResult ar) {
            UdpClient client = (UdpClient)ar.AsyncState;
            //Console.WriteLine( " number of bytes sent: {0}", client.EndSend( ar ) );

            messageSent = true;
        }

mesageSent を true にしかしてないw
次〜。

                while ( !messageSent ) {
                    if ( times > 300 ) {
                        if ( !done.IsCompleted )
                            Console.WriteLine( "タイムアウトしました。" );
                        /*
                         * タイムアウトしたら、greeting を "bye." にして待機ループを終了します。
                         */
                        greeting = BYE;
                        break;
                    }
                    Thread.Sleep( 100 );

                    ++times;
                }

とりあえずチンケなタイムアウト。
これで終わり、かな。