##// 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
"""Abstract base classes for kernel client channels"""
# Copyright (c) IPython Development Team.
# Distributed under the terms of the Modified BSD License.
import abc
from IPython.utils.py3compat import with_metaclass
class ChannelABC(with_metaclass(abc.ABCMeta, object)):
"""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