Memory Leak in ThreadPool

Fuse: < 0.12 to 0.21
OS: Windows
BuildTarget: MSVC (Memory dump) Testcase: see attached file

Uno.Threading.ThreadPool.DefaultWorkItem(s) are not released from memory because of the refcount being 1. Morten and I discovered that it is referenced by a method (maybe ThreadPool.DoTask()?)

DefaultWorkItems hold on to all data which is queued on the ThreadPool and eventually lead to the crash of the app.

Thenks for the report. I’ve created an internal ticket to track this.

Thanks for the test case.

The issue is now resolved and waiting to be released.

Awesome! Can you tell me in which Uno version it will be included?

Looks like the next Uno version will be 0.33.

It will include this fix and the generic constraint fix.

Actually, I think this would be Uno 0.32, which probably ships as part of Fuse 0.22.