我正在制作一个小型控制台应用程序,这是一款多人游戏。
多人游戏使用UDP,我对接收速度感到担忧。
这是当前的接收代码:
void Receive()
{
Console.WriteLine("Started");
while (true)
{
byte[] msg = new byte[1024];
client.Receive(msg);
string message = Encoding.ASCII.GetString(msg);
if (...) ...
if (...) ...
if (...) ...
}
}
等等几次检查(收到数据包后立即进行这些检查)。
所以我的问题是 - 虽然它适用于控制台应用程序,但处理数百或数千个客户端呢?
处理大量客户端时,接收和响应速度非常重要。
当然,这些检查会减慢接收过程。
有没有办法让接收过程更快,所以服务器能够同时处理数百个客户端?
如果有办法,还应该在客户端完成吗?