2017-12-24 6 views
1

Es ist sehr praktisch, ein IJulia Notebook von der Julia REPL zu starten.PID für Julia REPL gestartet IJulia (Jupyter) Notebook

Es ist auch schön, die REPL zu von

julia>notebook(detached=true) 
Process(setenv(/Users/.julia/v0.6/Conda/deps/usr/bin/jupyter notebook 
--NotebookApp.iopub_data_rate_limit=2147483647; 
dir="/Users/myJulia/"), ProcessRunning) 

verwenden, ist es eine Möglichkeit, innerhalb Julia die PID (Prozess-ID?) Erhalten des Notebooks (nicht die REPL), andere als eine Schale mit Befehl wie

pgrep -if jupyter-notebook 

dies die PID gibt jedoch könnte ich mehrere Notebooks haben runninng so wäre es nicht offensichtlich sein, welche welche ist. Da das Notebook in diesem Fall getrennt ist, stirbt es nicht, selbst wenn der Kernel gestoppt ist, das Notebook geschlossen ist und jupyter ausgeloggt ist. Ich weiß, wie man einen Prozess tötet. es wäre einfach sauberer, wenn ich die PID beim Start des Notebooks direkter abrufen könnte.

Antwort

0

Sie müssen einen Anruf an die Funktion getpid() aus einer Zelle im IJulia-Notizbuch auswerten.

enter image description here

+1

netter Gedanke. getpid() gibt jedoch die PID der Julia REPL zurück, nicht des Notebooks, das gestartet wurde. Das Notebook (zumindest auf MacOS) hat eine Eltern-PID von 1. Es können auch mehrere Notebooks laufen. Also, vielleicht keine direkte Möglichkeit, die REPL an das gerade gestartete Notebook anzubinden. – ShpielMeister

+0

Sie brauchen also die PID vom Notebook-Server? – SalchiPapa

+0

geht es darum, den Notebook-Lebenszyklus innerhalb der REPL zu verwalten. – ShpielMeister