I used the NameThreadForDebugging
in my application to name all my custom threads and even a main thread.
Now I see in Delphi IDE's Threads window seven threads. Three of them are my threads, but four other have no names and contain following call stacks:
Thread 1
ntdll.NtWaitForMultipleObjects
kernel32.BaseThreadInitThunk
ntdll.RtlInitializeExceptionChain
ntdll.RtlInitializeExceptionChain
Thread 2
ntdll.NtWaitForWorkViaWorkerFactory
kernel32.BaseThreadInitThunk
ntdll.RtlInitializeExceptionChain
ntdll.RtlInitializeExceptionChain
Thread 3
ntdll.NtWaitForMultipleObjects
kernel32.WaitForMultipleObjectsEx
C:\Windows\syswow64\USER32.dll
USER32.MsgWaitForMultipleObjects
etc.
They aren't TTimer objects because timers do not produce separate threads. What are they?