Автор |
Тема: Ожидание файла и продолжение выполнения формы (Прочитано 7033 раз) |
|
box_vma
Я люблю этот Форум!
Просмотреть Профиль |
Сообщений: 49
|
|
Ожидание файла и продолжение выполнения формы
« В: 20.07.17 в 21:20:54 » |
Цитировать | Править
|
Добрый вечер! Ни у кого не возникало необходимости в ходе выполнения формы проверить наличия файла, подождать если его нет, и затем продолжить? У меня сейчас возникла такая необходимость. Написал такую функцию: :kkm_wa (uc) ожидаем ответ fa=[dir 0]+'kkm\box\'+uc+'.ans' bt=[sf 0,99]; bt=[cp bt,[length bt]-1,2]; bt=[vl bt] while [fe fa]=-1 et=[sf 0,99]; et=[cp et,[length et]-1,2]; et=[vl et]; if et<bt et=et+60; endif if et-bt>=5 return (-1); endif endwhile return (1) По замыслу проверяет наличие файла в течение 5 секунд, затем возвращает 1 (файл есть), либо -1 (файл нет). Другого решения для таймера придумать не смог. Вроде все работает, но не нравится. Файл "давно уже есть", а форма все еще выполняется. Прошу поделиться опытом, если кто-нибудь таковой имеет. Спасибо, с уважением Владимир
|
|
Зарегистрирован |
|
|
|
Vladimir
Я люблю этот Форум!
Просмотреть Профиль | WWW |
Сообщений: 264
|
|
Re: Ожидание файла и продолжение выполнения формы
« Ответить #1 В: 21.07.17 в 18:48:39 » |
Цитировать | Править
|
on 20.07.17 в 21:20:54, box_vma wrote:Файл "давно уже есть", а форма все еще выполняется. |
| Первое, что приходит в голову - воспользоваться директивой AUTO. То есть сократить время ожидания по таймеру до минимального. Если за это время файл не появился, то директива AUTO запустит отчетную форму снова. Этим вы сделаете перерыв в работе отчетной формы и дадите возможеность серверу обработвть поступившие за это время запросы и потом опять вернуться к ожиданию появления ужного файла. Вариант. 2 ОФ работают в связке. Одна ждет файл (и перезпускается по AUTO), и если файл обнаружен, то запускает другую ОФ тоже по AUTO. Ни чего подобного я сам не делал, любопытно будет узнать о результате.
|
« Изменён в : 21.07.17 в 18:49:48 пользователем: Vladimir » |
Зарегистрирован |
С уважением, Владимир
|
|
|
Boris, Kiev.
Адепт ФБП с 1996г.
Просмотреть Профиль | E-мэйл
Сообщений: 875
|
|
Re: Ожидание файла и продолжение выполнения формы
« Ответить #2 В: 21.07.17 в 20:48:29 » |
Цитировать | Править
|
on 20.07.17 в 21:20:54, box_vma wrote:Добрый вечер! Ни у кого не возникало необходимости в ходе выполнения формы проверить наличия файла, подождать если его нет, и затем продолжить? |
| Конечно, возникала. Вот фрагмент формы с аналогичной задачей. ------------------------------------------------------------- * проверим наличие соответствущего каталога * проверим наличие соответствущего каталога * проверим наличие соответствущего каталога if [ged [user]+'*Clw32_exe_CurrentVersion*']>=20131028 DI=[fe PQ+'README.TXT'] *DI:^^^^^^^DI^^^^^^^^^^^^^ if DI=-1 DI='F:'+PQ+'README.TXT|Это тестовый файл-флаг наличия директории, его не нужно удалять, а если удалять, то, тогда, со всей директорией.' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^DI Маленькая техническая остановка. Автоматически создан требуемый каталог:^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^PQ *N:UPDATE_FORMS:HI-ROVBP DI='N:UPDATE_FORMS:'+NF+'"5' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^DI *N:UPDATE_FORMS:^^^^^^^^^^^NF Форма сейчас будет обновлена автоматически через 5 секунд. stop endif endif * проверим наличие соответствущего каталога * проверим наличие соответствущего каталога * проверим наличие соответствущего каталога ------------------------------------------------------------- Т.к. у вас ожидается файл с расширением ANS, и вероятно имеет отношение к работе самого сервера, то может расскАжите подробнее свою задачу.
|
|
Зарегистрирован |
|
|
|
mine-R
compact & flexible rulezzz
Просмотреть Профиль |
Сообщений: 150
|
|
Re: Ожидание файла и продолжение выполнения формы
« Ответить #3 В: 23.07.17 в 14:55:24 » |
Цитировать | Править
|
Ещё один пример (с отладочными вставками внутри) EZ=[SF 0,99] FL=[DIR 0]+'somefile' *IF [FE FL]>-1 DELETEFILE FL;ENDIF .*отладочная стр.[X] BT=[SF 0,99] PRINTSTR BT PRINTSTR ([CH13]+[CH10]) BT=[CP BT,24,2] BT=[VL BT] ET=BT :CHECKFILE IF [FE FL]>-1 GOTO YES; ENDIF EZ=[SF 0,99] ET=[CP EZ,24,2] ET=[VL ET] IF ET<BT ET=ET+60; ENDIF *IF ((ET-BT)=0) PRINTSTR EZ TO FILE FL; ENDIF .*отладочная стр.[0] *IF ((ET-BT)=1) PRINTSTR EZ TO FILE FL; ENDIF .*отладочная стр.[1] *IF ((ET-BT)=2) PRINTSTR EZ TO FILE FL; ENDIF .*отладочная стр.[2] *IF ((ET-BT)=3) PRINTSTR EZ TO FILE FL; ENDIF .*отладочная стр.[3] *IF ((ET-BT)=4) PRINTSTR EZ TO FILE FL; ENDIF .*отладочная стр.[4] IF (ET=BT)|((ET-BT)<5) GOTO CHECKFILE; ENDIF RZ='FILE NOT FOUND' GOTO END STOP :YES RZ='FILE FOUND' :END PRINTSTR 'RESULT:' PRINTSTR RZ PRINTSTR ([CH13]+[CH10]) PRINTSTR EZ STOP Чтобы проверить, необходимо раскомментировать отладочную строку [X] и одну из отладочных строк [0]-[4] (в зависимости от того, должен ли файл попытаться появиться сразу же, либо через 4 сек.) "Файл давно уже есть" понятие немного растяжимое, если это промежуток длиной менее секунды, то вместо [sf 0,99] таймер лучше строить через [sf 0,9]
|
|
Зарегистрирован |
|
|
|
Boris, Kiev.
Адепт ФБП с 1996г.
Просмотреть Профиль | E-мэйл
Сообщений: 875
|
|
Re: Ожидание файла и продолжение выполнения формы
« Ответить #4 В: 23.07.17 в 15:49:24 » |
Цитировать | Править
|
on 23.07.17 в 14:55:24, mine-R wrote:Ещё один пример (с отладочными вставками внутри) |
| У меня два вопроса к Вам: 1. Приведенный фрагмент используется Вами в какой-либо рабочей базе? 2. Вы наблюдали в диспетчере задач, на вкладке "Процессы" строчку fnt10p422.exe(к примеру) параллельно с отработкой формы, использующей этот фрагмент?
|
|
Зарегистрирован |
|
|
|
mine-R
compact & flexible rulezzz
Просмотреть Профиль |
Сообщений: 150
|
|
Re: Ожидание файла и продолжение выполнения формы
« Ответить #5 В: 23.07.17 в 17:10:45 » |
Цитировать | Править
|
on 23.07.17 в 15:49:24, Boris, Kiev. wrote: У меня два вопроса к Вам: 1. Приведенный фрагмент используется Вами в какой-либо рабочей базе? 2. Вы наблюдали в диспетчере задач, на вкладке "Процессы" строчку fnt10p422.exe(к примеру) параллельно с отработкой формы, использующей этот фрагмент? |
| Погонял и так и эдак данный пример.. 1. Подобные фрагменты встречаются в достаточно старых наработках по обмену через файлы со сторонними приложениями, с оговоркой что таймер всегда выставлен не более чем на 1 сек. (изредка 2 сек.) 2. Процессор i3-2310M @2.1GHz + 4Gb RAM DDR3 (Win7 x64) - Сервер занял на эти 5 сек. данного примера 31% ресурсов ЦП Процессор Pentium 4 3.0 GHz + 1,5Gb RAM DDR2 (Win7 x32) - на эти же секунды занял 51% ресурсов. Сервер был не единственным запущенным приложением на машинах. Сказать по правде, ни единого случая какого либо сбоя, отказа системы и даже визуально заметного глазу подвисания, отчетные формы с такими фрагментами не вызвали. Если на одной машине запущены в параллель несколько Серверов и теоретически 2-3 из них могут начать одновременную отработку такого фрагмента, нагрузка может стать критической. Но это уже чисто умозрительные мои заключения.
|
|
Зарегистрирован |
|
|
|
Boris, Kiev.
Адепт ФБП с 1996г.
Просмотреть Профиль | E-мэйл
Сообщений: 875
|
|
Re: Ожидание файла и продолжение выполнения формы
« Ответить #6 В: 23.07.17 в 18:53:19 » |
Цитировать | Править
|
on 23.07.17 в 17:10:45, mine-R wrote: Погонял и так и эдак данный пример.. 1. Подобные фрагменты встречаются в достаточно старых наработках по обмену через файлы со сторонними приложениями, с оговоркой что таймер всегда выставлен не более чем на 1 сек. (изредка 2 сек.) |
| Автор этой ветки назвал её: "ожидание файла..." Знаю, что лично, Вам более акцентировать ничего не нужно. on 23.07.17 в 17:10:45, mine-R wrote: 2. Процессор i3-2310M @2.1GHz + 4Gb RAM DDR3 (Win7 x64) - Сервер занял на эти 5 сек. данного примера 31% ресурсов ЦП Процессор Pentium 4 3.0 GHz + 1,5Gb RAM DDR2 (Win7 x32) - на эти же секунды занял 51% ресурсов. |
| Здесь замечу, что наш серверный модуль способен занять только одно ядро из всех имеющихся. Уверен, что сегодня уже практически не осталось одноядерных процессоров. Поэтому, те проценты, которые вы прописали и говорят о практически полной загрузке одного из ядер. Проверить и ждать - это две большие разницы. И в случае ожидания, т.е. получения ожидаемого условия в нашей форме можно не дождаться не только внутреннего ANS, но и файла внешнего приложения, т.к. процессор банально не будет "отпущен" нашим сервером на обработку других задач(правда остается неизвестным привязка внешнего приложения и ещё игра с приоритетами, но мои давние эксперименты с этим мало что меняли в лучшую сторону, может кто чего добъется этим, милости просим - поделитесь, может кто найдет примочки по распределению задач по ядрам). Авторам альтернативных клиентов просьба будет, как сделаете(а может уже и есть у вас, а вы просто молчите) аналог директивы на нашем модном: N:UPDATE_FORMS:ИМЯ_ФОРМЫ[?,"[TIME]] дайте знать. Буду рад, если что-нибудь совсем альтернативное реализуете, ведь операционные системы тоже обновляются. Ждём.
|
|
Зарегистрирован |
|
|
|
box_vma
Я люблю этот Форум!
Просмотреть Профиль |
Сообщений: 49
|
|
Re: Ожидание файла и продолжение выполнения формы
« Ответить #7 В: 23.07.17 в 20:48:30 » |
Цитировать | Править
|
Т.к. у вас ожидается файл с расширением ANS, и вероятно имеет отношение к работе самого сервера, то может расскАжите подробнее свою задачу. К работе самого сервера задача не имеет отношения. Внедряем работу ФБП с кассой-онлайн. Касса подключена через COM-порт на одной из клиентских машин. В заданный каталог обмена направляются команды для кассы, каталог сканируется специально разработанным приложением, при появлении файла с командами для кассы, они передаются в COM порт, и затем в этом-же каталоге создается файл-ответ. Вот этот файл-ответ и ждем, для дальнейшего выполнения сценария ФБП. Штатный клиент не используется, используем модифицированный шлюз С. Васеленко.
|
|
Зарегистрирован |
|
|
|
mine-R
compact & flexible rulezzz
Просмотреть Профиль |
Сообщений: 150
|
|
Re: Ожидание файла и продолжение выполнения формы
« Ответить #8 В: 23.07.17 в 22:06:29 » |
Цитировать | Править
|
on 23.07.17 в 18:53:19, Boris, Kiev. wrote: Автор этой ветки назвал её: "ожидание файла..." |
| Всё так, касаемо названия ветки, но в самом сообщении обозначен временной лимит этого ожидания в 5 секунд. Вообще-то у меня давно назрел вопрос ко всем по поводу того, как организовывается в ФБП аналог BAT-овской команды PAUSE или того же NOP (т.е. "ожидай и не делай ничего, не загружай процессор"). Склоняюсь к тому, что это всё-же как-то должно регулироваться клиентскими частями. Как Вы видите, узко-специализированные наработки клиентских частей есть практически у каждого, а клиентские приложения - помимо штатных, пока только у Вас и у Владимира. Касаемо директивы, которую Вы обозначили - вряд ли она вообще будет (в моих альтернативных наработках ). Обновления по таймеру для одной (последней открытой) формы, по моему мнению вполне достаточно. Для рядовых же пользователей, держать в параллельных MDI-окошках несколько динамически обновляющихся форм - на практике такой необходимости пока просто не возникало.
|
|
Зарегистрирован |
|
|
|
Boris, Kiev.
Адепт ФБП с 1996г.
Просмотреть Профиль | E-мэйл
Сообщений: 875
|
|
Re: Ожидание файла и продолжение выполнения формы
« Ответить #9 В: 24.07.17 в 07:33:03 » |
Цитировать | Править
|
on 23.07.17 в 20:48:30, box_vma wrote: Вот этот файл-ответ и ждем, для дальнейшего выполнения сценария ФБП. Штатный клиент не используется, используем модифицированный шлюз С. Васеленко. |
| Т.е. этот шлюз в вашей модификации стал гибридным клиентом, запускающим формы? Очень интересно.
|
|
Зарегистрирован |
|
|
|
Boris, Kiev.
Адепт ФБП с 1996г.
Просмотреть Профиль | E-мэйл
Сообщений: 875
|
|
Re: Ожидание файла и продолжение выполнения формы
« Ответить #10 В: 24.07.17 в 08:16:12 » |
Цитировать | Править
|
on 23.07.17 в 22:06:29, mine-R wrote: Вообще-то у меня давно назрел вопрос ко всем по поводу того, как организовывается в ФБП аналог BAT-овской команды PAUSE или того же NOP (т.е. "ожидай и не делай ничего, не загружай процессор"). |
| Здесь, наверное оговорились. NOP - новость для меня, в help(e) не обнаружил. PAUSE - просто приостанавливает исполнение батничка. Вы наверное вспомнили про SLEEP.EXE, которая часто использовалась и продолжает использоваться для этих целей. Но если, Вы подумали про PAUSE, то можете смело ставить STOP и писать: .. Жмите [R] для контроля появления файла ... stop endif от проверки условия on 23.07.17 в 22:06:29, mine-R wrote: Склоняюсь к тому, что это всё-же как-то должно регулироваться клиентскими частями. |
| Здесь не соглашусь, т.к. в форме(т.е. на сервере) реализовать sleep - как и в других языках программирования - не есть что-то невозможное. Quote: Обновления по таймеру для одной (последней открытой) формы, по моему мнению вполне достаточно. |
| Увы, если это про представленные алгоритмы "ожидания", то это простецкое заблуждение. См. свои цифры выше. И для автора ветки: Если прикипели к штатному клиенту, то сделайте батничек с использованием sleep.exe и в конце модифицируйте upti и получите "возможно устарело" или отведите одно клиентское место под робота с автообновлением всех форм(поставьте период 5 или 10 сек) и будет вам счастье.
|
|
Зарегистрирован |
|
|
|
Boris, Kiev.
Адепт ФБП с 1996г.
Просмотреть Профиль | E-мэйл
Сообщений: 875
|
|
Re: Ожидание файла и продолжение выполнения формы
« Ответить #11 В: 24.07.17 в 17:59:59 » |
Цитировать | Править
|
Перечитал: on 23.07.17 в 22:06:29, mine-R wrote: Для рядовых же пользователей, держать в параллельных MDI-окошках несколько динамически обновляющихся форм - на практике такой необходимости пока просто не возникало. |
| Возможно, Вы не совсем прониклись директивой N:UPDATE_FORMS:ИМЯ_ФОРМЫ[?,"[TIME]] Загрузите последнюю версию, стартуйте с двумя именами и полюбуйтесь как оно работает. Вот рабочий пример формы NONAME соорудил: NF='NONAME' *[sed [user]+'*WAIT*'+NF,0] обновите этой строкой в форме, предшествующей запуску своей формы(NF-не забудьте) FA=[dir0]+'README.TXT' if [:KKM_WA FA]>0 Файл уже есть, идем дальше.. goto EDALEE else 45 секунд прошло, файл не появился. * здесь можете сделать продолжение о принятии решения продлить ожидание или прочее... endif :EDALEE stop :KKM_WA (FA) ожидаем ответ if [fe FA]=-1 DI='N:UPDATE_FORMS:'+NF+'"5' ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^DI KO=[ged [user]+'*WAIT*'+NF]+1 кол-во обращений к KKM_WA [sed [user]+'*WAIT*'+NF,KO] TI=KO*5 if TI>40 return (0);endif Ждем появления файла, делаем проверки каждые 5 секунд. Не нагружая сервер и процессор. Уже прошло ^^^TIс. stop endif return (1) stop Про параллельные MDI-окошки, это можно сказать высший пилотаж применения этой директивы, вы можете открыть три формы - аналоги окошек проводника(дерево каталогов, список файлов активного каталога в дереве каталогов и третье окно с содержимым активной строки во втором окне). Это сегодня реально сделать, только не очень удобно, но это пока. Из того, что понравилось юзерам - это, помимо описанного примера, мгновенное обновление без лишних нажатий клавиши пробел в ответ на "возможно устарело". Это устраивается через вызов формы ввода данных в extrd.dat и последовательное обновление формы, которая её вызвала.
|
|
Зарегистрирован |
|
|
|
mine-R
compact & flexible rulezzz
Просмотреть Профиль |
Сообщений: 150
|
|
Re: Ожидание файла и продолжение выполнения формы
« Ответить #12 В: 24.07.17 в 23:25:06 » |
Цитировать | Править
|
Quote: Здесь, наверное оговорились. NOP - новость для меня, в help(e) не обнаружил. PAUSE - просто приостанавливает исполнение батничка. Вы наверное вспомнили про SLEEP.EXE, которая часто использовалась и продолжает использоваться для этих целей. Но если, Вы подумали про PAUSE, то можете смело ставить STOP и писать: .. Жмите [R] для контроля появления файла ... stop endif от проверки условия |
| Да, по поводу PAUSE оговорился, ибо эта команда включает ожидание реакции пользователя. SLEEP.EXE наиболее близкий вариант к опкоду NOP (No Operation). Quote: Здесь не соглашусь, т.к. в форме(т.е. на сервере) реализовать sleep - как и в других языках программирования - не есть что-то невозможное. |
| А каким образом возможно реализовать sleep на чистом ФБП в Сервере, при этом не нагружая его? N:UPDATE_FORMS:ИМЯ_ФОРМЫ[?,"[TIME]] Насколько я понял, прогнав Ваш пример, [TIME] это по сути тот же SLEEP.EXE - т.е. таймер, делегированный на Клиент. На Сервере же происходит лишь считываение/обновление в соответствии с таймером Клиента, данных в extrd.dat и реакция на выполнение/невыполнение условия (на появление/непоявление файла). Поправьте, если я понял неверно. Quote: Увы, если это про представленные алгоритмы "ожидания", то это простецкое заблуждение. См. свои цифры выше. |
| Нет, тут скорее про то, что N:UPDATE_LAST_OPENED_FORM[?,"[TIME]] на практике обычно вполне достаточно. Хотя, допускаю, что могут быть и такие задачи, когда полезно наблюдать обновления по таймеру более чем одной открытой формы. Но лично я с такими задачами пока не столкнулся (если оставить за скобками пользу для разработчиков при отладке учетных систем).
|
|
Зарегистрирован |
|
|
|
Boris, Kiev.
Адепт ФБП с 1996г.
Просмотреть Профиль | E-мэйл
Сообщений: 875
|
|
Re: Ожидание файла и продолжение выполнения формы
« Ответить #13 В: 25.07.17 в 08:07:30 » |
Цитировать | Править
|
on 24.07.17 в 23:25:06, mine-R wrote: А каким образом возможно реализовать sleep на чистом ФБП в Сервере, при этом не нагружая его? |
| На Вас это не похоже. Сильно не обидетесь?, если посоветую погуглить "аналог sleep в языках программировния" Quote: Насколько я понял, прогнав Ваш пример, [TIME] это по сути тот же SLEEP.EXE - т.е. таймер, делегированный на Клиент. |
| Да, так, по сути, лучше не скажешь, но реализовано на Паскале хитро, сейчас разворачивать не буду, чтобы конкретно описать. Понаблюдайте за нашими модулями на вкладке "Процессы" при этом. Может понравится!?... Quote: На Сервере же происходит лишь считываение/обновление в соответствии с таймером Клиента, данных в extrd.dat и реакция на выполнение/невыполнение условия (на появление/непоявление файла). Поправьте, если я понял неверно. |
| Здесь чуть проще, просто клиент шлет директиву серверу на обновление указанной формы. Наверное будет уместно ещё раз прописать строки инструкции по этой директиве. //BK 130217-20130527 Целевое обновление требуемых окон. Добавлено ещё одно расширение директивы N: N:UPDATE_FORMS:ИМЯ_ФОРМЫ[?,"[TIME]] т.е., например, если в любом отчете есть строки: N:UPDATE_FORMS:FORM1 то клиент попытается обновить отчет формы FORM1 N:UPDATE_FORMS:FORM2? то клиент попытается послать "Возможно устарело" в окно формы FORM2 N:UPDATE_FORMS:FORM3"10 то клиент попытается обновить отчет формы FORM3 через 10 секунд. N:UPDATE_FORMS:FORM4" то клиент попытается обновить отчет формы FORM4 через N секунд, что указано в "Опции"-"Период обновления" также если в TIME будет ошибка, то также клиент будет использовать значение из опций. Взятие на вооружение этих возможностей позволит настройщикам: - одновременно, разгрузить сервер, особенно в случае множества открытых окон, и отказаться от вложенных папок по именам клиентов в каталоге обмена \_BOX_ т.к. эта структура была реализована с целью возможности обособленного обновления форм каждого клиента посредством непосредственной модификации собственного upti(в текущей версии клиента снято соответствующее ограничение на старте); - реализовывать сценарии связанных окон, например, классическую схему проводника узкого окна(дерева каталогов) и широкого окна(списка файлов выбранного каталога в узком окне) или 3-ех оконных навигаторов по документам, правда, здесь будет не хватать возможностей задания, хранения и восстановления исторических положений и размеров окон; - ваять настоящих роботов без выделения отдельного клиентского места и ограничений в периоде обновления, теперь ФБП-настройщики могут легко потеснить ряды биржевых спекулянтов; - заняться моделированием нагрузки на сервер, приближенной к реальным системам для поиска узких мест и соответственно путей их разрешения. Quote: Нет, тут скорее про то, что N:UPDATE_LAST_OPENED_FORM[?,"[TIME]] на практике обычно вполне достаточно. |
| Вам решать, "хозяин-барин". Своё мнение уже изложил. Подумайте, здесь не очень сложно. Будут аргументы и выводы из всего этого для развития своего клиента - пишите, буду рад обсудить.
|
|
Зарегистрирован |
|
|
|
mine-R
compact & flexible rulezzz
Просмотреть Профиль |
Сообщений: 150
|
|
Re: Ожидание файла и продолжение выполнения формы
« Ответить #14 В: 27.07.17 в 17:51:53 » |
Цитировать | Править
|
Quote: На Вас это не похоже. Сильно не обидетесь?, если посоветую погуглить "аналог sleep в языках программировния" |
| Я и вовсе не из обидчивых докопаться бы "до истины". Гугл и языки программирования это здорово, но хотелось бы реализации именно через интерпретатор ФБП т.е. через виртуальную машину Сервера, не делегируя таймер ни батникам, ни внешним приложениям. Обычно я через пустые циклы ожидания организовываю, т.к. предполагаю, что предусмотрен для циклов периодический обмен системными сообщениями между Сервером и системой. Но сказать, что такие конструкции абсолютно не загружают ресурсы машины тоже нельзя. Если Вы знаете идеальный алгоритм, и этот алгоритм не засекречен - поделитесь
|
|
Зарегистрирован |
|
|
|
|
|