Иногда возникает потребность в создании искусственного замедлителя выполняемого кода 1С.
В типовых решениях встречаются конструкции типа
к=0;
Пока к<100 Цикл
    к=к+1;
КонецЦикла;

или этой подобные. Всё бы ничего ... для одного пользователя ... с одним запущенным экземпляром 1С.
А когда речь идет о большой системе с большим количеством пользователей, то такие замедлители вводят в ступор, потому что в этот момент 1С начинает, не то что кушать, а именно жрать ресурсы компьютера(сервера), вызывая неоправданное замедление работы.
А если замедлитель используется часто и без него никак, то естественным образом начинается поиск как избежать этой проблемы.

Вот и я однажды столкнулся с такой проблемой. Но решение оказалось достаточно простым - использование утилиты sleep.exe.
Данная утилита позволяет сделать паузу в выполнении любого сценария (я не говорю только про 1С) на заданный в секундах промежуток времени. Утилита не входит в состав винды, но её можно найти в на просторах интернета (например необходимо зарегистрироваться для просмотра ссылки) и просто скопировать на любой компьютер (если мне не изменяет память, то в систем32)
При выполнении команды этой утилиты 1С просто останавливает выполнение кода, вообще не кушая ресурсы компьютера(сервера), как это делается при любой штатной реализации замедлителя.

А процедура на 8-ке выглядит примерно так
Процедура Пауза(КоличествоСекунд) Экспорт
   Попытка
    WSHShell = Новый COMОбъект("WScript.Shell");
    WSHShell.Run("sleep "+Формат(КоличествоСекунд, "ЧГ=0"),0,1);
   Исключение
    // если перенесут базу на другой компьютер, где нет этой утилиты, то можно описать замедлитель
    // средствами 1С или ничего не описывать и не делать паузу.    
    ВремяПаузы = ТекущаяДата();
    Пока (ТекущаяДата() - ВремяПаузы) < КоличествоСекунд Цикл
        //холостой цикл замедлителя, но жрущий ресурсы ПК
    КонецЦикла;    
   КонецПопытки
КонецПроцедуры