英語で読む

次の方法で共有


TcpListener.AcceptSocket メソッド

定義

保留中の接続要求を受け入れます。

C#
public System.Net.Sockets.Socket AcceptSocket();

戻り値

データの送受信に使用する Socket

例外

リスナーが、Start() への呼び出しで開始されていません。

次のコード例では、 メソッドを AcceptSocket 使用して を Socket返します。 これは Socket 、新しく接続されたクライアントと通信するために使用されます。

C#

          // Accepts the pending client connection and returns a socket for communication.
           Socket socket = tcpListener.AcceptSocket();
            Console.WriteLine("Connection accepted.");

           string responseString = "You have successfully connected to me";

           //Forms and sends a response string to the connected client.
           Byte[] sendBytes = Encoding.ASCII.GetBytes(responseString);
           int i = socket.Send(sendBytes);
           Console.WriteLine("Message Sent /> : " + responseString);

注釈

AcceptSocket は、データの送受信に使用できる を Socket 返すブロック メソッドです。 ブロックを回避する場合は、 メソッドを Pending 使用して、受信接続キューで接続要求が使用可能かどうかを判断します。

返される は Socket 、リモート ホストの IP アドレスとポート番号で初期化されます。 クラスで使用できる メソッドと Receive メソッドのいずれかをSend使用して、Socketリモート ホストと通信できます。 の使用 Socketが完了したら、必ず その Close メソッドを呼び出してください。 アプリケーションが比較的単純な場合は、 メソッドではなく メソッドをAcceptTcpClientAcceptSocket使用することを検討してください。 TcpClient では、ブロック同期モードでネットワーク経由でデータを送受信するための簡単な方法が提供されます。

注意

このメンバーは、アプリケーションでネットワーク トレースが有効にされている場合にトレース情報を出力します。 詳細については、「.NET Frameworkのネットワーク トレース」を参照してください。

適用対象

製品 バージョン
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1

こちらもご覧ください