-
-
Notifications
You must be signed in to change notification settings - Fork 117
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Deadlock when sending data from server in MessageReceived handler #263
Comments
In test attached at theRainbird/CoreRemoting#44 most of the time is spent on var ts = Stopwatch.GetTimestamp();
read = await stream.ReadAsync(buffer, 0, buffer.Length);
var time = Stopwatch.GetTimestamp() - ts;
Interlocked.Add(ref _totalReadtime, time * 1000/Stopwatch.Frequency);
Console.WriteLine("TotalReadMessageDataAsync " + _totalReadtime); |
Deadlock is gone when I set |
Hi @sancheolz I'm sorry I haven't had a chance to respond to this. Thank you for letting me know. I need to go back and re-evaluate whether or not |
|
Hi @jchristn If you interesting, I've posted issue at dotnet about this dotnet/runtime#90664 |
Thank you @sancheolz i will update the library tomorrow to change the default behavior! |
Here it is. Thanks again @sancheolz |
I run this code on net 6 on ubuntu 22.04
server3304.txt
client2834.txt
Sometimes this code works to the end, and sometimes it freezes. If you stop the debugger at the moment of hanging, then the _countReceivedMessages variable is equal to the value 854, and if you continue execution, the value does not change.
Perhaps this issue affects this theRainbird/CoreRemoting#44
version of WatsonTCP is 5.1.0
The text was updated successfully, but these errors were encountered: