Thread :: middleThreadProc () - это небольшая вспомогательная функция в CLR, которая используется в качестве функции запуска потока для любого потока, запускаемого CLR.Найдите его в источнике SSCLI20, src \ vm \ threads.cpp
Ожидается, что этот запуск в другом потоке.Код очистки запускается, когда домен приложения выгружается.Логика CLR очень сложна, но похоже, что она будет работать, когда домен приложения в последний раз запускает поток финализатора для очистки кучи.Вы можете предположить, что все управляемые объекты мертвы и другие запущенные потоки не выполняются.Помните, что ваш код подвергается двухсекундному таймауту потока финализатора.