Go to the latest version of this document.

# ``twisted`.`internet`.`interfaces`.`IReactorFDSet``

interface documentation

`class IReactorFDSet(Interface): (source)`

Known implementations: `twisted.internet._glibbase.GlibReactorBase`, `twisted.internet._threadedselect.ThreadedSelectReactor`, `twisted.internet.asyncioreactor.AsyncioSelectorReactor`, `twisted.internet.cfreactor.CFReactor`, `twisted.internet.epollreactor.EPollReactor`, `twisted.internet.kqreactor.KQueueReactor`, `twisted.internet.pollreactor.PollReactor`, `twisted.internet.selectreactor.SelectReactor`, `twisted.internet.testing.MemoryReactor`, `twisted.internet.win32eventreactor.Win32Reactor`, `twisted.internet.posixbase._ContinuousPolling`

View In Hierarchy

Implement me to be able to use `IFileDescriptor` type resources.

This assumes that your main-loop uses UNIX-style numeric file descriptors (or at least similarly opaque IDs returned from a .fileno() method)

Method | `addReader` | I add reader to the set of file descriptors to get read events for.
Method | `addWriter` | I add writer to the set of file descriptors to get write events for.
Method | `getReaders` | Return the list of file descriptors currently monitored for input events by the reactor.
Method | `getWriters` | Return the list file descriptors currently monitored for output events by the reactor.
Method | `removeAll` | Remove all readers and writers.
Method | `removeReader` | Removes an object previously added with `addReader`.
Method | `removeWriter` | Removes an object previously added with `addWriter`.

def addReader(reader: `IReadDescriptor`): (source)

I add reader to the set of file descriptors to get read events for.

Parameters
reader:`IReadDescriptor` | An `IReadDescriptor` provider that will be checked for read events until it is removed from the reactor with `removeReader`.

def addWriter(writer: `IWriteDescriptor`): (source)

I add writer to the set of file descriptors to get write events for.

Parameters
writer:`IWriteDescriptor` | An `IWriteDescriptor` provider that will be checked for write events until it is removed from the reactor with `removeWriter`.

def getReaders() -> `list[IReadDescriptor]`: (source)

Return the list of file descriptors currently monitored for input events by the reactor.

Returns
`list[IReadDescriptor]` | the list of file descriptors monitored for input events.

def getWriters() -> `list[IWriteDescriptor]`: (source)

Return the list file descriptors currently monitored for output events by the reactor.

Returns
`list[IWriteDescriptor]` | the list of file descriptors monitored for output events.

def removeAll() -> `list[IReadDescriptor | IWriteDescriptor]`: (source)

Remove all readers and writers.

Should not remove reactor internal reactor connections (like a waker).

Returns
`list[IReadDescriptor | IWriteDescriptor]` | A list of `IReadDescriptor` and `IWriteDescriptor` providers which were removed.

def removeReader(reader: `IReadDescriptor`): (source)

Removes an object previously added with `addReader`.

def removeWriter(writer: `IWriteDescriptor`): (source)

Removes an object previously added with `addWriter`.