Open
Description
When i use https://github.com/chronoxor/CSharpServer
Test With
Repeat: 10
Thread/Connect: 100
Message send and echo: 10
On screen - ChatSession never Disposed.
(But I try manual call Dispose, and GC.Collect)
Then if disassembly in VS2022:
session.Dispose:
public sealed override void Dispose()
{
Dispose(A_0: true);
GC.SuppressFinalize(this);
GC.KeepAlive(this);
}
I think problem in this: GC.KeepAlive(this); - autogenerate because
in C++ code -> CreateSession
return std::make_shared ;
this bad idea for c# (and other code for dispose)
https://habr.com/ru/articles/509004/
Metadata
Metadata
Assignees
Labels
No labels