Имя: Пароль:
1C
 
как зациклить без зависания
0 mxs089
 
05.06.15
21:50
сабж
1 mxs089
 
05.06.15
21:51
ПодключитьОбработчикОжидания

не подходит, т.к. нужно < 1 сек.
2 RomanYS
 
05.06.15
21:51
(1) 0.1 сек
3 ДенисЧ
 
05.06.15
21:52
шозабред?
Я уже завис. Без зацикливания
4 RomanYS
 
05.06.15
21:53
ПодключитьОбработчикОжидания <> зациклить
давай подробности, зачем?
5 mxs089
 
05.06.15
21:54
мне нужно сделать вечный цикл, и выполнение процедуры с промежутком 0.5 сек.
6 mxs089
 
05.06.15
21:55
я раньше как то делал, должна быть какая то процедурка, что то типа sleep
7 ДенисЧ
 
05.06.15
21:55
(5) Тебе нужен в первую очередь психиатр...
8 mxs089
 
05.06.15
21:58
(7) я тебя это спрашиваю?
9 RomanYS
 
05.06.15
22:01
<Интервал> (обязательный)

Тип: Число.
Интервал времени в секундах с точностью до 1/10 секунды, через который будет осуществляться вызов процедуры (положительное число).
Если указано значение меньше 1, то значение третьего параметра должно быть равно Истина.

просто переподключай его через 0.5 сек
10 mxs089
 
05.06.15
22:03
(9) да, спасибо
11 RomanYS
 
05.06.15
22:11
или запусти две формы с 1 сек в противофазе ))
12 romix
 
05.06.15
22:12

///////////////////////////////////////////////////////////////////////
Процедура sleep(КолМиллесекунд) Экспорт
            wsh=Новый COMОбъект("WScript.Shell");
            wsh.run("ping -n 1 -w "+Формат(КолМиллесекунд,"ЧГ=")+" 0.0.0.1",0,-1);
            
    //Также можно использовать ПодключитьОбработчикОжидания(<ИмяПроцедуры>, <Интервал>, <Однократно>)         
КонецПроцедуры

13 Fragster
 
гуру
05.06.15
22:16
ага, а (12) - в фоновом задании
15 romix
 
05.06.15
22:23
Слип также нужен для распараллеливания действий: например один обработчик читает или пишет какие-то файлы, другой в это время ему не мешает (например, ждет несколько секунд) по файлу .LCK.
16 RomanYS
 
05.06.15
22:24
(12)
пред = ТекущаяУниверсальнаяДатаВМиллисекундах();
Пока ТекущаяУниверсальнаяДатаВМиллисекундах() - пред < мс Цикл
КонецЦикла;
17 romix
 
05.06.15
22:25
(16) Этот цикл на 100% грузит процессор системы.
18 mxs089
 
05.06.15
22:36
(12) форма виснет, ctrl+break даже не отрабатывает
19 GreyK
 
05.06.15
23:03
(0) Мне интересно, зачем понадобилось забивать гвоздь микроскопом? Есть-же другие предметы для забивания... :)
20 romix
 
05.06.15
23:15
(18) ОбработкаПрерыванияПользователя
Хотя на форме лучше всякими обработчиками ожидания.
А то оно клювом будет долбить.


                                             ____
                                        
.-'       ''....
                                       .'        .--.    '.`
                                      : .--.    :    :     '-.
                                     : :    :   :    :       :`
                                     : :  @ :
:  @ :      '`.
                                
..:---''''   ----''.   .'"
                         ..--''                   _j  :   :
                
..--''    .--'             ..''      :    `.
           ..--''                    
..--''        ..'   /``
         .'                  
..--''        ..--''       /
        :            
..--''        _..--''               \
       :        
.--''        
..--''    :                :`.:
      :     _.-'      ..--''             :              /
      :   .'  
..--''                      \            /
      \  :--''                               \          .'
       \ :                   [WILU]           :         :
        \:                                     :        \
         '                                     :         \


21 mxs089
 
06.06.15
00:13
(20) да я знаю, использовал, все равно уходит в раздумье
22 romix
 
06.06.15
00:37
(21) Нужно саму задачу огласить, а то может sleep и не лучшее решение. Есть всякие обработчики событий. От внешнего оборудования и т.п. Для 1С 7.7 я делал генерацию события для ожидания пауз в работе 1С. 8-ка сама генерирует кучу событий.
23 mxs089
 
06.06.15
00:58
есть процедура Обновить, ее нужно вызывать скажем каждые 500мс, но программа не должна уходить в раздумья, мне нужно чтобы реагировала на изменения
24 Злопчинский
 
06.06.15
03:15
(23) может не надо каждые полсекунды обновлять., а тогда только когда что-то в натуре поменялось..? ты ж не бегаешь к телефону каждые 2 минуты посмотреть - а не повзвонили ли..? телефон сам звонит...
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс