Show More
@@ -344,7 +344,7 class KernelHandler(AuthenticatedHandler): | |||
|
344 | 344 | @web.authenticated |
|
345 | 345 | def delete(self, kernel_id): |
|
346 | 346 | km = self.application.kernel_manager |
|
347 |
km. |
|
|
347 | km.shutdown_kernel(kernel_id) | |
|
348 | 348 | self.set_status(204) |
|
349 | 349 | self.finish() |
|
350 | 350 |
@@ -87,11 +87,22 class MultiKernelManager(LoggingConfigurable): | |||
|
87 | 87 | config=self.config, |
|
88 | 88 | ) |
|
89 | 89 | km.start_kernel(**kwargs) |
|
90 | # start the shell channel, needed for graceful restart | |
|
90 | # start just the shell channel, needed for graceful restart | |
|
91 | 91 | km.start_channels(shell=True, sub=False, stdin=False, hb=False) |
|
92 | 92 | self._kernels[kernel_id] = km |
|
93 | 93 | return kernel_id |
|
94 | 94 | |
|
95 | def shutdown_kernel(self, kernel_id): | |
|
96 | """Shutdown a kernel by its kernel uuid. | |
|
97 | ||
|
98 | Parameters | |
|
99 | ========== | |
|
100 | kernel_id : uuid | |
|
101 | The id of the kernel to shutdown. | |
|
102 | """ | |
|
103 | self.get_kernel(kernel_id).shutdown_kernel() | |
|
104 | del self._kernels[kernel_id] | |
|
105 | ||
|
95 | 106 | def kill_kernel(self, kernel_id): |
|
96 | 107 | """Kill a kernel by its kernel uuid. |
|
97 | 108 | |
@@ -269,6 +280,13 class MappingKernelManager(MultiKernelManager): | |||
|
269 | 280 | self.log.info("Using existing kernel: %s" % kernel_id) |
|
270 | 281 | return kernel_id |
|
271 | 282 | |
|
283 | def shutdown_kernel(self, kernel_id): | |
|
284 | """Shutdown a kernel and remove its notebook association.""" | |
|
285 | self._check_kernel_id(kernel_id) | |
|
286 | super(MappingKernelManager, self).shutdown_kernel(kernel_id) | |
|
287 | self.delete_mapping_for_kernel(kernel_id) | |
|
288 | self.log.info("Kernel shutdown: %s" % kernel_id) | |
|
289 | ||
|
272 | 290 | def kill_kernel(self, kernel_id): |
|
273 | 291 | """Kill a kernel and remove its notebook association.""" |
|
274 | 292 | self._check_kernel_id(kernel_id) |
@@ -532,9 +532,9 class NotebookApp(BaseIPythonApplication): | |||
|
532 | 532 | """ |
|
533 | 533 | self.log.info('Shutting down kernels') |
|
534 | 534 | km = self.kernel_manager |
|
535 |
# copy list, since |
|
|
535 | # copy list, since shutdown_kernel deletes keys | |
|
536 | 536 | for kid in list(km.kernel_ids): |
|
537 |
km. |
|
|
537 | km.shutdown_kernel(kid) | |
|
538 | 538 | |
|
539 | 539 | def start(self): |
|
540 | 540 | ip = self.ip if self.ip else '[all ip addresses on your system]' |
General Comments 0
You need to be logged in to leave comments.
Login now