managerabc.py
53 lines
| 1.2 KiB
| text/x-python
|
PythonLexer
Thomas Kluyver
|
r15106 | """Abstract base class for kernel managers.""" | ||
Brian Granger
|
r9121 | |||
MinRK
|
r16571 | # Copyright (c) IPython Development Team. | ||
# Distributed under the terms of the Modified BSD License. | ||||
Brian Granger
|
r9121 | |||
import abc | ||||
Thomas Kluyver
|
r13359 | from IPython.utils.py3compat import with_metaclass | ||
Brian Granger
|
r9121 | |||
Thomas Kluyver
|
r13359 | class KernelManagerABC(with_metaclass(abc.ABCMeta, object)): | ||
Brian Granger
|
r9128 | """KernelManager ABC. | ||
The docstrings for this class can be found in the base implementation: | ||||
MinRK
|
r9370 | `IPython.kernel.kernelmanager.KernelManager` | ||
Brian Granger
|
r9128 | """ | ||
Brian Granger
|
r9121 | |||
@abc.abstractproperty | ||||
def kernel(self): | ||||
pass | ||||
#-------------------------------------------------------------------------- | ||||
Brian E. Granger
|
r9151 | # Kernel management | ||
Brian Granger
|
r9121 | #-------------------------------------------------------------------------- | ||
@abc.abstractmethod | ||||
def start_kernel(self, **kw): | ||||
pass | ||||
@abc.abstractmethod | ||||
def shutdown_kernel(self, now=False, restart=False): | ||||
pass | ||||
@abc.abstractmethod | ||||
def restart_kernel(self, now=False, **kw): | ||||
pass | ||||
@abc.abstractproperty | ||||
def has_kernel(self): | ||||
pass | ||||
@abc.abstractmethod | ||||
def interrupt_kernel(self): | ||||
pass | ||||
@abc.abstractmethod | ||||
def signal_kernel(self, signum): | ||||
pass | ||||
Brian E. Granger
|
r10275 | @abc.abstractmethod | ||
Brian Granger
|
r9121 | def is_alive(self): | ||
pass | ||||