问题描述
- C#关于SocketAsyncEventArgs
-
C# SocketAsyncEventArgs, 什么情况下BytesTransferred > Count
如图 e.SetBuffer设置需要接收8字节, 这里BytesTransferred为什么偶尔会出现14
解决方案
还有一个相关的BUG https://github.com/dotnet/corefx/pull/3575
看来最稳妥的方式是不重用SocketAsyncEventArgs,每次Socket调用都创建一个新SAEA
解决方案二:
c#
解决方案三:
http://bbs.csdn.net/topics/390601098
解决方案四:
在一台win7的机器上,并发1000连接会出现这种情况,其他一台xp、win7、mac(mono)上都是正常的 - -!
解决方案五:
在多核心CPU高并发下,似乎确实有此BUG
https://social.msdn.microsoft.com/Forums/en-US/40fe397c-b1da-428e-a355-ee5a6b0b4d2c/socketasynceventargssetbuffer-bug-?forum=ncl
有没有好的解决方案???
时间: 2024-10-30 03:06:34