做的是某个游戏的挂机程序,游戏的链接方式TCP,而且每隔1分钟有一个心跳包的发送。要保持在线并要接收发送些邮件内容本机Win7 32系统,减小线程开栈的大小,可以开5000个线程左右。
现在问题是,如果我只保持在线的话,一个账号一个线程,定时发送心跳包就可以。但现在要接收些消息并且发送些消息,所有就要Receive,如果是同步的话,那么Receive因为要阻塞线程,就要独占一个线程才行,加上心跳包的线程,一个账号要耗费两个线程了。如果是异步,看文档说使用异步的时候会自动开辟一个后台线程,这样的话也耗费两个线程请问有木有什么好的解决方案,尽可能的少开线程多挂号啊?