##// END OF EJS Templates
restart channels on kernel restart...
restart channels on kernel restart generally not necessary, but sometimes the kernel connection can be dirty. We have only seen this by starting a qtconsole via %qtconsole, then killing the kernel, at which point the original notebook's connection (at the zmq level) is never restored to the new kernel at the same endpoint. It's weird, and probably a zmq bug, but a simple reconnect seems to solve it.

File last commit:

r7787:28b538a9
r10335:652de7b3
Show More
daemonize.py
26 lines | 833 B | text/x-python | PythonLexer
MinRK
scrub twisted/deferred references from launchers...
r4019 """daemonize function from twisted.scripts._twistd_unix."""
#-----------------------------------------------------------------------------
# Copyright (c) Twisted Matrix Laboratories.
# See Twisted's LICENSE for details.
# http://twistedmatrix.com/
#-----------------------------------------------------------------------------
import os, errno
def daemonize():
# See http://www.erlenstar.demon.co.uk/unix/faq_toc.html#TOC16
if os.fork(): # launch child and...
os._exit(0) # kill off parent
os.setsid()
if os.fork(): # launch child and...
os._exit(0) # kill off parent again.
null = os.open('/dev/null', os.O_RDWR)
for i in range(3):
try:
os.dup2(null, i)
Matthias BUSSONNIER
conform to pep 3110...
r7787 except OSError as e:
MinRK
scrub twisted/deferred references from launchers...
r4019 if e.errno != errno.EBADF:
raise
os.close(null)