【发布时间】:2013-11-27 00:28:16
【问题描述】:
我编写了一个多线程套接字服务器应用程序,它接受超过 1000 个并发连接。最近我们遇到了应用程序崩溃;分析转储文件后得知应用程序由于堆损坏而崩溃。我发现以下链接中讨论了相同的问题。
.NET Does NOT Have Reliable Asynchronouos Socket Communication? http://support.microsoft.com/kb/947862
还讨论提出了 3 个解决方案。
网络应用程序应该对其发布的优秀异步 IO 的数量有一个上限。
使用 Microsoft CCR
使用 TPL
由于时间因素,我想坚持#1,但我不清楚如何实现这一点。有人可以给出一个好的起点吗?
还有没有人使用 Async with TPL 来解决这个问题?
【问题讨论】:
标签: sockets async-await heap-memory asyncsocket