Управление использованием ресурсов в Julia lang - PullRequest
0 голосов
/ 21 декабря 2018

Я хочу создать программное обеспечение, которое будет периодически запускаться автоматически для сортировки значительного количества файлов, находящихся на моем диске в Джулии.

Я пытался сделать это с помощью следующего кода, нопожирает мои ресурсы.

while true
// if it's 6 O'clock in the morning, runs function for batch processing
end

Как я могу ограничить использование ресурсов?

1 Ответ

0 голосов
/ 21 декабря 2018

Вы можете использовать Timer события вместо использования цикла.Все, что вам нужно сделать, это определить функцию обратного вызова, которая принимает аргумент Timer и выполняет задание, которое вы хотите.

julia> begin
         myfun(timer) = println("Sort Files")
         t = Timer(myfun, 2, interval = 0.2) # after 2 seconds the task will run for each 0.2 seconds interval
         wait(t) # the timer events will trigger forever if you want to stop the events you should call close(t) somewhere in the future
       end

Вы можете остановить таймер в вашей функции на основе условия, используя close(timer)или просто позже, позвонив close(t) куда-нибудь еще, у которого есть доступ к t.

С Timer s вы все равно можете продолжать использовать свой экземпляр julia для других целей.

...