##// END OF EJS Templates
Fix race condition in javascript kernel message processing...
Fix race condition in javascript kernel message processing Because the binary messages are now deserialized using the asynchronous FileReader API, we need to have some way to force the messages to still be processed in the order they are received. This patch implements a simple processing queue using promises.

File last commit:

r19234:d12d89f3
r20441:834cd9c4
Show More
channelsabc.py
49 lines | 935 B | text/x-python | PythonLexer
MinRK
split KernelManager into KernelManager + KernelClient
r10285 """Abstract base classes for kernel client channels"""
MinRK
remove user_variables...
r16570 # Copyright (c) IPython Development Team.
# Distributed under the terms of the Modified BSD License.
MinRK
split KernelManager into KernelManager + KernelClient
r10285
import abc
Thomas Kluyver
Fixes for metaclass syntax
r13359 from IPython.utils.py3compat import with_metaclass
MinRK
split KernelManager into KernelManager + KernelClient
r10285
Thomas Kluyver
Fixes for metaclass syntax
r13359 class ChannelABC(with_metaclass(abc.ABCMeta, object)):
MinRK
split KernelManager into KernelManager + KernelClient
r10285 """A base class for all channel ABCs."""
@abc.abstractmethod
def start(self):
pass
@abc.abstractmethod
def stop(self):
pass
@abc.abstractmethod
def is_alive(self):
pass
class HBChannelABC(ChannelABC):
"""HBChannel ABC.
The docstrings for this class can be found in the base implementation:
`IPython.kernel.channels.HBChannel`
"""
@abc.abstractproperty
def time_to_dead(self):
pass
@abc.abstractmethod
def pause(self):
pass
@abc.abstractmethod
def unpause(self):
pass
@abc.abstractmethod
def is_beating(self):
pass