C# 套接字上的重叠数据内存泄漏
我正在使用异步套接字使用MSDN文档在客户端和服务器之间建立连接: 我从同步开始,后来是异步。成功完成第一个应用程序后,我开始在GitHub存储库中搜索更多代码和解释。我发现: 没关系,它可以工作,但它有内存泄漏,我开始分析,我发现: (可能内存泄漏) (到处都是循环检测到的语句。Idk知道它们的意思。我想是应用程序或GC强迫它停止并将其标记为循环) 我觉得有点不对劲,因为如果发送1MB的数据,内存应该只会增加1MB,但以后会减少。但这并没有发生。我开始处理所有东西,没有引起异常,但这并没有多大帮助 我开始在StackOverflow和其他地方搜索,我发现: 然而,我真的不明白那里正在讨论什么 我还发现: 我了解到,套接字需要确认何时已经在BeginSend/EndSend和BeginReceive/EndReceive之间发送了数据,因为如果没有,它将等待,并开始增加内存(直到检测到循环?) 也许在我分享的代码项目中我应该得到这个?我不知道,我该从哪里开始C# 套接字上的重叠数据内存泄漏,c#,sockets,memory-leaks,heap-profiling,C#,Sockets,Memory Leaks,Heap Profiling,我正在使用异步套接字使用MSDN文档在客户端和服务器之间建立连接: 我从同步开始,后来是异步。成功完成第一个应用程序后,我开始在GitHub存储库中搜索更多代码和解释。我发现: 没关系,它可以工作,但它有内存泄漏,我开始分析,我发现: (可能内存泄漏) (到处都是循环检测到的语句。Idk知道它们的意思。我想是应用程序或GC强迫它停止并将其标记为循环) 我觉得有点不对劲,因为如果发送1MB的数据,内存应该只会增加1MB,但以后会减少。但这并没有发生。我开始处理所有东西,没有引起异常,
我需要一个指南。我将尝试分析CodeProject。您解决过这个问题吗?我也有同样的问题是的,使用另一个实现。那是我的,我这么做只是为了理解插座。但是我建议你使用一些库。你能推荐一些吗?看这个:或者。希望这有帮助!