我目前正在制作一个 C++ 应用程序(以改进我的 C++)。我正在创建一个套接字服务器,但我被卡住了。
我将如何在 C# 中做到这一点:
using System;
using System.Net;
using System.Net.Sockets;
namespace Network
{
class HTcpListener
{
private Socket mSocket;
public HTcpListener(int port)
{
IPEndPoint endpoint = new IPEndPoint(IPAddress.Any, port);
mSocket = new Socket(endpoint.AddressFamily, SocketType.Stream, ProtocolType.tcp);
mSocket.Bind(endpoint);
mSocket.Listen(10);
mSocket.BeginAccept(new AsyncCallback(OnAccept));
}
private void OnAccept(IAsyncResult iAr)
{
// Handle connection and start up game
mSocket.BeginAccept(new AsyncCallback(OnAccept));
}
}
}
但现在我想知道。在 WinSock2.h 中有一个名为 accept 的函数,但我想知道它是否与 BeginAccept 一样工作,如果不是,如何使它像我的 C# 示例中那样工作。它必须具有同时处理多个套接字的能力 + 1 个以上的套接字。