twisted.internet.kqreactor.KQueueReactor(posixbase.PosixReactorBase) class documentationtwisted.internet.kqreactor
View Source
(View In Hierarchy)
Implements interfaces: twisted.internet.interfaces.IReactorDaemonize, twisted.internet.interfaces.IReactorFDSet
A reactor that uses kqueue(2)/kevent(2) and relies on Python 2.6 or higher which has built in support for kqueue in the select module.
| Method | __init__ | Initialize kqueue object, file descriptor tracking dictionaries, and the base class. |
| Method | beforeDaemonize | Implement IReactorDaemonize.beforeDaemonize. |
| Method | afterDaemonize | Implement IReactorDaemonize.afterDaemonize. |
| Method | addReader | Implement IReactorFDSet.addReader. |
| Method | addWriter | Implement IReactorFDSet.addWriter. |
| Method | removeReader | Implement IReactorFDSet.removeReader. |
| Method | removeWriter | Implement IReactorFDSet.removeWriter. |
| Method | removeAll | Implement IReactorFDSet.removeAll. |
| Method | getReaders | Implement IReactorFDSet.getReaders. |
| Method | getWriters | Implement IReactorFDSet.getWriters. |
| Method | doKEvent | Poll the kqueue for new events. |
| Instance Variable | _kq | A kqueue which will be used to check for I/O readiness. |
| Instance Variable | _impl | The implementation of _IKQueue
to use. |
| Instance Variable | _selectables | A dictionary mapping integer file descriptors to instances of FileDescriptor
which have been registered with the reactor. All FileDescriptors
which are currently receiving read or write readiness notifications will be
present as values in this dictionary. |
| Instance Variable | _reads | A set containing integer file descriptors. Values in this set will be
registered with _kq for read readiness notifications which
will be dispatched to the corresponding FileDescriptor
instances in _selectables. |
| Instance Variable | _writes | A set containing integer file descriptors. Values in this set will be
registered with _kq for write readiness notifications which
will be dispatched to the corresponding FileDescriptor
instances in _selectables. |
| Method | _updateRegistration | Private method for changing kqueue registration on a given FD filtering for events given filter/op. This will never block and returns nothing. |
| Method | _doWriteOrRead | Private method called when a FD is ready for reading, writing or was lost. Do the work and raise errors where necessary. |
Inherited from PluggableResolverMixin (via PosixReactorBase, ReactorBase):
| Instance Variable | resolver | The installed IResolverSimple. |
| Method | installResolver | See IReactorPluggableResolver. |
| Method | installNameResolver | See IReactorPluggableNameResolver. |
| Method | nameResolver | Implementation of read-only IReactorPluggableNameResolver.nameResolver. |
| Instance Variable | _nameResolver | The installed IHostnameResolver. |
Inherited from PluggableResolverMixin (via PosixReactorBase, ReactorBase):
| Instance Variable | resolver | The installed IResolverSimple. |
| Method | installResolver | See IReactorPluggableResolver. |
| Method | installNameResolver | See IReactorPluggableNameResolver. |
| Method | nameResolver | Implementation of read-only IReactorPluggableNameResolver.nameResolver. |
| Instance Variable | _nameResolver | The installed IHostnameResolver. |
Inherited from PluggableResolverMixin (via PosixReactorBase, ReactorBase):
| Instance Variable | resolver | The installed IResolverSimple. |
| Method | installResolver | See IReactorPluggableResolver. |
| Method | installNameResolver | See IReactorPluggableNameResolver. |
| Method | nameResolver | Implementation of read-only IReactorPluggableNameResolver.nameResolver. |
| Instance Variable | _nameResolver | The installed IHostnameResolver. |
Inherited from PluggableResolverMixin (via PosixReactorBase, ReactorBase):
| Instance Variable | resolver | The installed IResolverSimple. |
| Method | installResolver | See IReactorPluggableResolver. |
| Method | installNameResolver | See IReactorPluggableNameResolver. |
| Method | nameResolver | Implementation of read-only IReactorPluggableNameResolver.nameResolver. |
| Instance Variable | _nameResolver | The installed IHostnameResolver. |
Inherited from PluggableResolverMixin (via PosixReactorBase, ReactorBase):
| Instance Variable | resolver | The installed IResolverSimple. |
| Method | installResolver | See IReactorPluggableResolver. |
| Method | installNameResolver | See IReactorPluggableNameResolver. |
| Method | nameResolver | Implementation of read-only IReactorPluggableNameResolver.nameResolver. |
| Instance Variable | _nameResolver | The installed IHostnameResolver. |
FileDescriptor
which have been registered with the reactor. All FileDescriptors
which are currently receiving read or write readiness notifications will be
present as values in this dictionary.
_kq for read readiness notifications which
will be dispatched to the corresponding FileDescriptor
instances in _selectables.
_kq for write readiness notifications which
will be dispatched to the corresponding FileDescriptor
instances in _selectables.
Initialize kqueue object, file descriptor tracking dictionaries, and the base class.
See:
| Parameters | _kqueueImpl | The implementation of _IKQueue
to use. A hook for testing. |
Private method for changing kqueue registration on a given FD filtering for events given filter/op. This will never block and returns nothing.
Private method called when a FD is ready for reading, writing or was lost. Do the work and raise errors where necessary.