While debugging a .NET Framework 3.5, WinForms application I spotted some "Worker Thread"s without a name.
I know when you open an application you've got a one worker thread by default. However in the middle of debugging when I pause the debugger and take a look at the "Threads" window I see about 5+ similar threads (priority=normal).
All the threads opened by the application got a name, so these are not opened from the code, at least not via Thread.Start()
When I try to double click, VS.NET can't locate the code either.
What are these threads? Are they normal, or does some operations somehow leaves empty threads behind?
Can they be Timers or similar non obvious controls, functions works with temporary threads in the background?
I just compared threads in VS with threads in WinDbg and it appears that VS labels thread pool threads as "Worker Thread" in the threads window. Thus, I would assume that what you're seeing are threads started because of use of BackgroundWorker, Timer, BeginInvoke or similar thread pool features.