Если вы вызываете метод (M1) с использованием QueueUserWorkItem, почему M1 вызывает внутри него другой метод (M2), а M2 запускается в основном потоке, а не в том же рабочем потоке, что и M1?
Если вы вызываете метод (M1) с использованием QueueUserWorkItem, почему это так? что когда M1 вызывает другой метод (M2) внутри него, M2 запускается на Основная нить вместо той же самой рабочей нити, что и M1?
Это неверное утверждение, метод M2 будет вызываться тем же потоком, что и M1 (если, например, вы специально не поставите в очередь вызов M2 для выполнения в другом потоке, то есть с использованием Dispatcher)
Dispatcher