Я видел это раньше.Вы блокируете поток обработки сообщений главного окна.
Вы не должны помещать функцию Sleep () в однопоточное приложение, если оно имеет функцию обработки сообщений главного окна.Оконное приложение всегда должно обрабатывать оконные сообщения без заметной задержки, в другом случае это вызовет тупик, по крайней мере, для приложения.Последствия зависят от платформы Windows, настроек компилятора и конфигурации процессора, обычно приложение в режиме отладки имеет временный обходной путь.Но если вы запустите такое приложение, скомпилированное с настройками выпуска, оно может использовать одно ядро ЦП с функцией, которая заблокировала его поток обработки сообщений в главном окне.
Раздел примечаний в описании функции MSDN Sleep () четко указывает на эту ситуацию.
Вам просто нужно запустить новый поток, чтобы использовать функцию Sleep (), чтобы разрешить свободный поток оконных сообщений в основном потоке.