Возможно ли запустить несколько длинных задач в IPython Notebook, закрыть браузер, а затем через некоторое время открыть его снова и показать результаты этих задач?
Скажем, задача такая:
def f():
import time
time.sleep(100)
with open("result.txt", "w") as fh:
fh.write("Done.")
Если я запускаю задачу нормально и закрываю браузер до завершения, я открываю его, я не вижу 'result.txt'
.
Если я запустил его с помощью %px
магии или параллельного исполнения - снова нет результата, если я закрою браузер до завершения.
Доступны любые расширения или хаки? Или я что-то упускаю?
ОБНОВЛЕНИЕ 1:
Несмотря на то, что поддержка управления фоновыми заданиями в IPython, фоновые задания становятся устаревшими после отключения браузера.
Единственное, что я мог придумать, это выпустить %connect_info
перед закрытием браузера, а затем подключиться с экрана терминала с помощью
ipython console --existing <ID>.json
и выполняйте мои задания оттуда.
ОБНОВЛЕНИЕ 2:
Еще более полезный взлом - это комбинация ipython console
и управления заданиями. То есть Я открываю консоль и присоединяюсь к тому же сеансу при запуске фонового задания в браузере, а затем я могу закрыть его, пока работа не будет завершена.
ОБНОВЛЕНИЕ 3:
он работает с версии iPython 1.0dev без хаков. вы просто запускаете то, что хотите, закройте браузер и он все еще работает.