Я выполняю длинную работу, используя кластер компьютеров. Иногда процесс прерывается, и мне приходится вручную перезапускать. Существует значительный простои, когда перерывы происходят в одночасье. Мне было интересно, есть ли способ запустить сценарий супервизора в Julia, который контролирует, работает ли работа в другом экземпляре Julia. Он перезапустит процесс, если он будет прерван и завершится после завершения задания. К сожалению, я точно не знаю, как проверить, что процесс запущен, и как перезапустить процесс. Вот приблизительная идея:Как автоматически перезапустить длинную работу в Julia
state = true
while state == true
#check every minute
sleep(60)
data = readcsv("outputfile.csv")
#read file to check if process is finished
if size(data,1) < N
#some function to check if the process is running
if isrunning() == true
#Do nothing.Keep running
else
#some function to spawn new instance of julia
#run the code
include("myscript.jl")
end
else
#Job finished, exit while loop
state = false
end
end