##// END OF EJS Templates
use IOLoop.current in a few places...
MinRK -
Show More
@@ -229,9 +229,12 b' class AuthenticatedZMQStreamHandler(ZMQStreamHandler, IPythonHandler):'
229 229
230 230 # start the pinging
231 231 if self.ping_interval > 0:
232 self.last_ping = ioloop.IOLoop.instance().time() # Remember time of last ping
232 loop = ioloop.IOLoop.current()
233 self.last_ping = loop.time() # Remember time of last ping
233 234 self.last_pong = self.last_ping
234 self.ping_callback = ioloop.PeriodicCallback(self.send_ping, self.ping_interval)
235 self.ping_callback = ioloop.PeriodicCallback(
236 self.send_ping, self.ping_interval, io_loop=loop,
237 )
235 238 self.ping_callback.start()
236 239
237 240 def send_ping(self):
@@ -242,7 +245,7 b' class AuthenticatedZMQStreamHandler(ZMQStreamHandler, IPythonHandler):'
242 245
243 246 # check for timeout on pong. Make sure that we really have sent a recent ping in
244 247 # case the machine with both server and client has been suspended since the last ping.
245 now = ioloop.IOLoop.instance().time()
248 now = ioloop.IOLoop.current().time()
246 249 since_last_pong = 1e3 * (now - self.last_pong)
247 250 since_last_ping = 1e3 * (now - self.last_ping)
248 251 if since_last_ping < 2*self.ping_interval and since_last_pong > self.ping_timeout:
@@ -254,4 +257,4 b' class AuthenticatedZMQStreamHandler(ZMQStreamHandler, IPythonHandler):'
254 257 self.last_ping = now
255 258
256 259 def on_pong(self, data):
257 self.last_pong = ioloop.IOLoop.instance().time()
260 self.last_pong = ioloop.IOLoop.current().time()
@@ -886,7 +886,7 b' class NotebookApp(BaseIPythonApplication):'
886 886 line = sys.stdin.readline()
887 887 if line.lower().startswith('y') and 'n' not in line.lower():
888 888 self.log.critical("Shutdown confirmed")
889 ioloop.IOLoop.instance().stop()
889 ioloop.IOLoop.current().stop()
890 890 return
891 891 else:
892 892 print("No answer for 5s:", end=' ')
@@ -895,11 +895,11 b' class NotebookApp(BaseIPythonApplication):'
895 895 # set it back to original SIGINT handler
896 896 # use IOLoop.add_callback because signal.signal must be called
897 897 # from main thread
898 ioloop.IOLoop.instance().add_callback(self._restore_sigint_handler)
898 ioloop.IOLoop.current().add_callback(self._restore_sigint_handler)
899 899
900 900 def _signal_stop(self, sig, frame):
901 901 self.log.critical("received signal %s, stopping", sig)
902 ioloop.IOLoop.instance().stop()
902 ioloop.IOLoop.current().stop()
903 903
904 904 def _signal_info(self, sig, frame):
905 905 print(self.notebook_info())
@@ -1002,14 +1002,22 b' class NotebookApp(BaseIPythonApplication):'
1002 1002 b = lambda : browser.open(url_path_join(self.connection_url, uri),
1003 1003 new=2)
1004 1004 threading.Thread(target=b).start()
1005
1006 self.io_loop = ioloop.IOLoop.current()
1005 1007 try:
1006 ioloop.IOLoop.instance().start()
1008 self.io_loop.start()
1007 1009 except KeyboardInterrupt:
1008 1010 info("Interrupted...")
1009 1011 finally:
1010 1012 self.cleanup_kernels()
1011 1013 self.remove_server_info_file()
1012 1014
1015 def stop(self):
1016 def _stop():
1017 self.http_server.stop()
1018 self.io_loop.stop()
1019 self.io_loop.add_callback(_stop)
1020
1013 1021
1014 1022 def list_running_servers(profile='default'):
1015 1023 """Iterate over the server info files of running notebook servers.
General Comments 0
You need to be logged in to leave comments. Login now