Правильное обновление рессурса



  • Добрый!
    Нужна помощь, немного не понимаю как корректно обновлять рессурс в многопотоке, по прошествию времени. Рессурс надо именно обновлять новыми данными что с удаленного файла берутся.

    сейчас у меня сделано так:
    В onApplicationStart объявляется сам рессурс (жадный алгорит и ждать - не стоят галочки), и делается начальное его заполнение (скачивается файл, парсится и просто присваивается "список в рессурс"). Ну и в другую переменную кладется текущее время.

    В Main проверяется время, и если прошло > заданного то:
    скачивается файл, парсится и так-же присваивается "список в рессурс". Ну и метка времени смещается на текущее.

    Из рессурса извлекаю данные с |notreuse

    Все ли корректно тут?
    Моменты что смущает ...
    a) может быть нужна все-же галочка "ждать появления рессурса" ?
    b) существует функция "перезагрузить рессурс" - назначение не понял, вроде мне она не требуется тут
    c) я не объявляю еще раз рессурс в Main перед его новым заполнением, возможно надо?

    Я все ищу почему завершается рандомно потоки и скрипт, пытаюсь найти решение задачи https://community.bablosoft.com/topic/15838/завершаются-потоки-почему-не-ясно/8

    p.s. а как получить кол-во элементов оставшихся до извлечения когда |notreuse вызывать? если получить кол-во элементов в рессурсе - то всегда одно и тоже значение выдает. Или хотя-бы как понять когда рессурс закончился для |notreuse ?



  • @truAlock said in Правильное обновление рессурса:
    Или хотя-бы как понять когда рессурс закончился для |notreuse ?

    Если я провильно тебя понял, то
    Поставь галку Не прерывать приложение и оберни действие в игнорировать ошибки



  • @prakash
    " галку Не прерывать приложение" я не вижу такой ... это где?

    У меня из рессурса выбирается так (нужно 1 раз за поток выбрать только)
    Установить переменную:
    {{KeywordsList|notreuse}} в KEYWORD

    это всё обернуто в "игнорировать ошибки"



  • @truAlock said in Правильное обновление рессурса:

    @prakash
    " галку Не прерывать приложение" я не вижу такой ... это где?

    У меня из рессурса выбирается так (нужно 1 раз за поток выбрать только)
    Установить переменную:
    {{KeywordsList|notreuse}} в KEYWORD

    это всё обернуто в "игнорировать ошибки"

    65baace4-53fd-4188-85f3-33ced62d5baf-изображение.png



  • @prakash said in Правильное обновление рессурса:

    @truAlock said in Правильное обновление рессурса:
    Или хотя-бы как понять когда рессурс закончился для |notreuse ?

    Если я провильно тебя понял, то
    Поставь галку Не прерывать приложение и оберни действие в игнорировать ошибки

    Screenshot_5.jpg
    Screenshot_6.jpg



  • Благодарю!!! Нашел .. спрятано хорошо, когда просто вводишь - не видать её, только при выборе



  • Благодарю!
    Вроде помогло, уже 2+ часа работает стабильно без остановки. и это просто великолепно


Log in to reply