Имя: Пароль:
1C
1С v8
Как организовать задержку выполнения программы на 30 секунд
0 semiluki
 
22.01.15
12:05
Как организовать задержку выполнения программы на 30 секунд?
Что-то типа delay(30000) ?
1 Maxus43
 
22.01.15
12:07
одноразовый обработчик ожидания подключить?
2 Mankubus
 
22.01.15
12:08
начало = текущаядата()
пока текущаядата()<начало+30 цикл

конеццикла
3 Я не курил
 
22.01.15
12:08
тд = текущаядата();
пока 1=1 Цикл
Если текущаядата()-тд>=30 Тогда прервать;
конеццикла
4 semiluki
 
22.01.15
12:08
(1)Ее сработает на сервере
5 bolero
 
22.01.15
12:10
(0) недоплачивают, надо простимулировать? ;)
6 BDA80
 
22.01.15
12:12
Процедура Задержка(Секунд) Экспорт
    СтрокаЗапроса = "ping -n 1 -w " + Формат(1000 * Секунд, "ЧГ=0") + " 127.255.255.255";
    WshShell = Новый COMОбъект("WScript.Shell");
    WshShell.Run(СтрокаЗапроса, 0, -1);
КонецПроцедуры
7 Адский плющ
 
22.01.15
12:23
Нафига, интересно...
8 mikecool
 
22.01.15
12:24
9 DrZombi
 
гуру
22.01.15
12:25
(7) Что бы в Цикле не грузить проц.
И бывают момент, когда нужно сделать туже паузу, при проведении документов, на том же сервере :)
10 kortun
 
22.01.15
12:25
(7) ну например он перепроводит кучу документов и хочет снизить нагрузку
11 Balabass
 
22.01.15
12:29
(0) ping localhost например
12 Serg_1960
 
22.01.15
12:36
(0) А кто (или что) запрещает тебе запустить регламентное задание с расписанием "каждые 30 секунд"?
13 DrZombi
 
гуру
22.01.15
13:01
(12) К примеру долгий запрос, который уже сформирован, и тебе нужно обработать пару десятков тысяч документов.
И в этот момент еще и пользователи Жалуются на Транзакцию по несколько часов :)
14 ДенисЧ
 
22.01.15
13:27
(13) не обрабатывай документы в транзакции )))
15 IШаман
 
22.01.15
13:30
(0) Например открыть окно с вопросом, и временм ожидания 30 секунд. А вообще для правильного ответа на этот вопрос необходимо знать зачем.
(2) Интересно что раньше случиться перегрев проца, или то что комп согласиться то ТекущаяДата все таки стала больше на 30 секунд
16 Fragster
 
гуру
22.01.15
13:30
задержка выполнения может понадобится в случае, когда нужно периодическое действие, а подготовка к этой "периодике" достаточно долгая.

Например у меня требовался опрос внешней системы по COM+ с периодичностью одна секунда, но при этом сама инициализация объекта была больше секунды.

сделал задержку через пинг
17 Fragster
 
гуру
22.01.15
13:31
(16) опрос был в фоновом задании, а в другом фоновом задании был вочдог (оно уже с нормальным расписанием), который проверял константу с датой последнего опроса и, если она протухла - прибивал старое и стартовал новое фоновое задание.
18 IШаман
 
22.01.15
13:32
(16) Может быть тогда нужно проверять готовность, а то мы все таки не работаем в системах реального времени, и утверждение о том что требуется 1сек заведомо ложное.
19 Fragster
 
гуру
22.01.15
13:35
(18) какая "готовность"? точность этой одной секунды да - не очень важна в моем конкретном случае, а вот периодичность - весьма важна.
20 IШаман
 
22.01.15
13:36
(19) Готовность данных для обработки.
21 1Сергей
 
22.01.15
13:43
(6) +1
пинг само оптимально
22 Fragster
 
гуру
22.01.15
14:34
(20) данные готовы и доступны всегда
23 Vovan1975
 
22.01.15
14:47
Предупреждение("Это пауза",30);
24 ДенисЧ
 
22.01.15
14:48
(23) НаСервере....
25 Vovan1975
 
22.01.15
14:53
(24) тогда (12)
26 mikecool
 
22.01.15
15:03
в (8) обсосано все... разве что нет инфа про уф, но думаю все равно актуально
Ошибка? Это не ошибка, это системная функция.