77
88import os
99import uuid
10+
1011import zmq
1112
12- from tornado import gen
1313from traitlets .config .configurable import LoggingConfigurable
1414from ipython_genutils .importstring import import_item
1515from traitlets import (
@@ -82,7 +82,6 @@ def __len__(self):
8282 def __contains__ (self , kernel_id ):
8383 return kernel_id in self ._kernels
8484
85- @gen .coroutine
8685 def start_kernel (self , kernel_name = None , ** kwargs ):
8786 """Start a new kernel.
8887
@@ -108,9 +107,9 @@ def start_kernel(self, kernel_name=None, **kwargs):
108107 parent = self , log = self .log , kernel_name = kernel_name ,
109108 ** constructor_kwargs
110109 )
111- yield gen . maybe_future ( km .start_kernel (** kwargs ) )
110+ km .start_kernel (** kwargs )
112111 self ._kernels [kernel_id ] = km
113- raise gen . Return ( kernel_id )
112+ return kernel_id
114113
115114 @kernel_method
116115 def shutdown_kernel (self , kernel_id , now = False , restart = False ):
@@ -187,25 +186,15 @@ def signal_kernel(self, kernel_id, signum):
187186 """
188187 self .log .info ("Signaled Kernel %s with %s" % (kernel_id , signum ))
189188
190- @gen . coroutine
189+ @kernel_method
191190 def restart_kernel (self , kernel_id , now = False ):
192191 """Restart a kernel by its uuid, keeping the same ports.
193192
194193 Parameters
195194 ==========
196195 kernel_id : uuid
197- The id of the kernel to restart.
198-
199- now : bool, optional
200- If True, the kernel is forcefully restarted *immediately*, without
201- having a chance to do any cleanup action. Otherwise the kernel is
202- given 1s to clean up before a forceful restart is issued.
203-
204- In all cases the kernel is restarted, the only difference is whether
205- it is given a chance to perform a clean shutdown or not.
196+ The id of the kernel to interrupt.
206197 """
207- km = self .get_kernel (kernel_id )
208- yield gen .maybe_future (km .restart_kernel (now ))
209198 self .log .info ("Kernel restarted: %s" % kernel_id )
210199
211200 @kernel_method
0 commit comments