Юлия вызывает скрипт на существующий REPL из командной строки - PullRequest
0 голосов
/ 15 ноября 2018

Я хочу запустить скрипт Julia из командной строки окна, но, кажется, каждый раз, когда я запускаю > Julia code.jl, создается новый экземпляр Julia, и время инициализации (загрузка пакета, компиляция?) Довольно большое.

Есть ли способ пропустить это время инициализации, запустив скрипт на текущем экземпляре REPL / Julia?(что обычно экономит мне 50% времени работы).

Я использую Julia 1.0.

Спасибо,

Ответы [ 2 ]

0 голосов
/ 15 ноября 2018

Есть несколько возможных решений.Все они предполагают разные способы отправки команд на работающую сессию Джулии.Первые несколько, которые приходят мне на ум:

Во всех решениях вы можете отправить команду Юлии, выполнив некоторую команду оболочки.

Независимо от того, какой подход вы предпочитаете, ключевой задачей является дезинфекция кода для правильной обработки ошибок (т. Е. Ситуация, когда вы посылаете какую-то команду в сеанс Julia, и она падает, или когда вы отправляете запросы быстрее, чем Джулия может их обработать).Это особенно важно, если вы хотите, чтобы сервер Julia был отключен от терминала.

В качестве примечания: при использовании модуля Distributed из stdlib в Julia для многопроцессорной обработки вы фактически делаете очень похожую вещь (но связьот Юлии до Юлии), поэтому вы также можете посмотреть, как реализован этот модуль, чтобы понять, как это можно сделать.

0 голосов
/ 15 ноября 2018

Вы можете использовать include:

julia> include("code.jl")
...