powered by simpleCommunicator - 2.0.54     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Ограничение времени выполнения функции
11 сообщений из 11, страница 1 из 1
Ограничение времени выполнения функции
    #39364163
vixxa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго всем дня, уважаемые форумчане!
Столкнулся с необходимостью ограничивать время выполнения функции, так как по прошествии длительного интервала результат работы уже не важен и чрезвычайно не желателен для пользователя приложения.
Функция Public, лежит в отдельном модуле. К ней обращаются формы и запросы.
Не бросайте камни, ткните носом, куда копать....
Заранее всем спасибо за любые ответы!
...
Рейтинг: 0 / 0
Ограничение времени выполнения функции
    #39364167
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А какой смысл тормозить? пусть уж себе впахивает до конца...

В крайнем случае заведи публичную переменную, которая в функции проверяется (например, на каждом витке основного цикла работы или ещё где - ну чтобы и вроде нечасто, но и не раз в сутки), и ежели функция заработалась сверх меры, меняй значение этой переменной на сигнал, что пора завязывать...
...
Рейтинг: 0 / 0
Ограничение времени выполнения функции
    #39364170
vixxa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AkinaА какой смысл тормозить? пусть уж себе впахивает до конца...
А вот, например, ping айпишника - если более 500мс то смысла ждать еще 2500 мс нет смысла, можно вычислять следующее значение...
...
Рейтинг: 0 / 0
Ограничение времени выполнения функции
    #39364196
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vixxaнапример, ping айпишника - если более 500мс то смысла ждать еще 2500 мс нет смысла
Ошибаешься. Бывает, пока шлюз прочихается и начнёт таки рутить пакеты, десяток секунд пройдёт. А уж если для связи подымается VPN, причём on demand с малым тайм-аутом и автологоффом...
...
Рейтинг: 0 / 0
Ограничение времени выполнения функции
    #39364205
guest_rusimport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vixxa,
ну, если "в лоб" , то как то так
...
Рейтинг: 0 / 0
Ограничение времени выполнения функции
    #39364209
vixxa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AkinaОшибаешься. Бывает...
Это уж точно, бывает... Спасибо за краткий экскурс по сетевым технологиям (я без сарказма ;) ). Вообще-то я про пинг для примера, хотя можно было для примера использовать человеческий фактор (ну не нажал пользователь на какую-то кнопку, которую нужно было нажать в определенное время, или вывод на экран результаты работы функции, которая поразрядно вычисляет пи (3,141592653...) пока не заполнится нужное пользователю пространство экрана не истечет определенное время)...
Все таки вопрос стоял именно в определенном времени , по истечению которого функция, вне зависимости от результатов, должна прекратить выполняться.
...
Рейтинг: 0 / 0
Ограничение времени выполнения функции
    #39364219
а так?
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
Option Compare Database
Option Explicit

Sub DoIt()
    Debug.Print tst(1)
End Sub

Function tst(t#) As Variant
    Dim i&, j&, t1#
    tst = "time out"
    t1 = Timer
    For i = 1 To 100000000
        j = j + 1
        If Timer > t1 + t Then Exit Function
    Next i
    tst = j
End Function
...
Рейтинг: 0 / 0
Ограничение времени выполнения функции
    #39364233
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vixxaвопрос стоял именно в определенном времени , по истечению которого функция, вне зависимости от результатов, должна прекратить выполняться.Значит, внутри должен быть соотв. флаг. Ловим время на старте, а в процессе выполнения периодически проверяем, не истекло ли отпущенное время. Или тоже с внешним управлением, но от запускающегося на старте функции таймера.
...
Рейтинг: 0 / 0
Ограничение времени выполнения функции
    #39364246
vixxa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina, guest_rusimport, а так?
Спасибо за ответы!
Попробовал предложенные Вами варианты - что-то не очень решаются проблемы.
Возможно из-за того, что лучше один раз увидеть, чем сто раз услышать.
Постараюсь не сильно отвлечь Ваше внимание, приложив для рассмотрения описываемую мною выше БД.
Еще раз спасибо всем!
...
Рейтинг: 0 / 0
Ограничение времени выполнения функции
    #39364289
guest_rusimport
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vixxa,
в приведенной в примере в коментариях ссылке на топик есть решение вашего вопроса
...
Рейтинг: 0 / 0
Ограничение времени выполнения функции
    #39364316
vixxa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
guest_rusimport,

Спасибо за ответ и за совет. Я конечно же пробовал предложенный Вами вариант, так как он был описан на той же ветке форума, откуда я брал код в используемом мною варианте.
Кстати, благодаря Вашим изменениям функция стала работать гораздо быстрее. Спасибо.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Ограничение времени выполнения функции
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]