我正在用 C# 开发一个小型在线游戏。目前我正在使用简单的同步 TCP 套接字。但是现在(因为这是某种“学习项目”)我想转换为异步套接字。在客户端我有方法:byte[] SendAndReceive(Opcode op, byte[] data)
. 但是当我使用异步套接字时,这不再可能了。例如,我的MapManager
班级首先检查地图是否在本地文件夹中(校验和),如果不是,则将从服务器下载地图。
所以我的问题是:有没有什么好的方法可以发送一些数据并获得答案,而无需将接收到的数据保存到某种缓冲区并轮询直到该缓冲区不为空?