Package twisted :: Package internet :: Module default :: Class PosixReactorBase |
[frames | no frames]

## Class PosixReactorBase

    ReactorBase --+
                  |
                 PosixReactorBase

Known Subclasses:
  `CFReactor`, `Gtk2Reactor`, `GtkReactor`, `PollReactor`, `SelectReactor`, `Win32Reactor`

A basis for reactors that use file descriptors.

Method Summary
| ``_handleSigchld`(self, signum, frame)` Reap all processes on SIGCHLD.
| ``_handleSignals`(self)` Install the signal handlers for the Twisted event loop.
| ``connectMulticast`(self, remotehost, remoteport, protocol, localport, interface, maxPacketSize)` Connects a ConnectedDatagramProtocol instance to a UDP port.
| ``connectSSL`(self, host, port, factory, contextFactory, timeout, bindAddress)`
| ``connectTCP`(self, host, port, factory, timeout, bindAddress)`
| ``connectUDP`(self, remotehost, remoteport, protocol, localport, interface, maxPacketSize)` Connects a `ConnectedDatagramProtocol` instance to a UDP port.
| ``connectUNIX`(self, address, factory, timeout)`
| ``connectUNIXDatagram`(self, address, protocol, maxPacketSize, mode, bindAddress)` Connects a `ConnectedDatagramProtocol` instance to a path.
| `connectWith(self, connectorType, *args, **kw)`
| ``installWaker`(self)` Install a `waker' to allow other threads to wake up the IO thread.
| ``listenMulticast`(self, port, protocol, interface, maxPacketSize)` Connects a given DatagramProtocol to the given numeric UDP port.
| ``listenSSL`(self, port, factory, contextFactory, backlog, interface)`
| ``listenTCP`(self, port, factory, backlog, interface)`
| ``listenUDP`(self, port, protocol, interface, maxPacketSize)` Connects a given `DatagramProtocol` to the given numeric UDP port.
| ``listenUNIX`(self, address, factory, backlog, mode)`
| ``listenUNIXDatagram`(self, address, protocol, maxPacketSize, mode)` Connects a given `DatagramProtocol` to the given path.
| `listenWith(self, portType, *args, **kw)`
| `mainLoop(self)`
| `run(self, installSignalHandlers)`
| `spawnProcess(self, processProtocol, executable, args, env, path, uid, gid, usePTY)`
| `startRunning(self, installSignalHandlers)`
Inherited from ReactorBase
| ``__init__`(self)`
| ``_cbContinueSystemEvent`(self, result, eventType)`
| ``_continueSystemEvent`(self, eventType)`
| ``_initThreadPool`(self)`
| ``_internalResolve`(self, name, timeout)`
| ``_resetCallLater`(self, tple)`
| ``addReader`(self, reader)`
| ``addSystemEventTrigger`(self, phase, eventType, f, *args, **kw)` See twisted.internet.interfaces.IReactorCore.addSystemEventTrigger.
| ``addWriter`(self, writer)`
| ``callFromThread`(self, f, *args, **kw)` See twisted.internet.interfaces.IReactorThreads.callFromThread.
| ``callInThread`(self, callable, *args, **kwargs)` See twisted.internet.interfaces.IReactorThreads.callInThread.
| ``callLater`(self, seconds, f, *args, **kw)` See twisted.internet.interfaces.IReactorTime.callLater.
| ``callWhenRunning`(self, callable, *args, **kw)` See twisted.internet.interfaces.IReactorCore.callWhenRunning.
| ``cancelCallLater`(self, callID)` See twisted.internet.interfaces.IReactorTime.cancelCallLater.
| ``clientSSL`(self, host, port, protocol, contextFactory, timeout)` Deprecated - use connectSSL instead.
| ``clientTCP`(self, host, port, protocol, timeout)` Deprecated - use connectTCP instead.
| ``clientUNIX`(self, address, protocol, timeout)` Deprecated - use connectUNIX instead.
| ``crash`(self)` See twisted.internet.interfaces.IReactorCore.crash.
| ``disconnectAll`(self)` Disconnect every reader, and writer in the system.
| ``doIteration`(self)` Do one iteration over the readers and writers we know about.
| ``fireSystemEvent`(self, eventType)` See twisted.internet.interfaces.IReactorCore.fireSystemEvent.
| ``getDelayedCalls`(self)`
| ``initThreads`(self)`
| ``installResolver`(self, resolver)`
| ``iterate`(self, delay)` See twisted.internet.interfaces.IReactorCore.iterate.
| ``removeAll`(self)`
| ``removeReader`(self, reader)`
| ``removeSystemEventTrigger`(self, triggerID)` See twisted.internet.interfaces.IReactorCore.removeSystemEventTrigger.
| ``removeWriter`(self, writer)`
| ``resolve`(self, name, timeout)` Return a Deferred that will resolve a hostname.
| ``runUntilCurrent`(self)` Run all pending timed calls.
| ``sigBreak`(self, *args)` Handle a SIGBREAK interrupt.
| ``sigInt`(self, *args)` Handle a SIGINT interrupt.
| ``sigTerm`(self, *args)` Handle a SIGTERM interrupt.
| ``stop`(self)` See twisted.internet.interfaces.IReactorCore.stop.
| ``suggestThreadPoolSize`(self, size)` See twisted.internet.interfaces.IReactorThreads.suggestThreadPoolSize.
| ``timeout`(self)`
| ``wakeUp`(self)` Wake up the event loop.

Class Variable Summary
`tuple` | `__implements__` = `((<class twisted.internet.interfaces.IR...`
Inherited from ReactorBase
`str` | `__name__` = `'ReactorBase'`
`NoneType` | `_lock` = None
`int` | `installed` = 0
`NoneType` | `threadCallQueue` = None
`NoneType` | `threadpool` = None

Method Details

### _handleSigchld(self, signum, frame) Reap all processes on SIGCHLD. This gets called on SIGCHLD. We do no processing inside a signal handler, as the calls we make here could occur between any two python bytecode instructions. Deferring processing to the next eventloop round prevents us from violating the state constraints of arbitrary classes. Note that a Reactor must be able to accept callLater calls at any time, even interleaved inside it's own methods; it must block SIGCHLD if it is unable to guarantee this.

### _handleSignals(self) Install the signal handlers for the Twisted event loop.

### connectMulticast(self, remotehost, remoteport, protocol, localport=0, interface='', maxPacketSize=8192) Connects a ConnectedDatagramProtocol instance to a UDP port. EXPERIMENTAL.

### connectSSL(self, host, port, factory, contextFactory, timeout=30, bindAddress=None) See Also: twisted.internet.interfaces.IReactorSSL.connectSSL

### connectTCP(self, host, port, factory, timeout=30, bindAddress=None) See Also: twisted.internet.interfaces.IReactorTCP.connectTCP

### connectUDP(self, remotehost, remoteport, protocol, localport=0, interface='', maxPacketSize=8192) Connects a `ConnectedDatagramProtocol` instance to a UDP port. EXPERIMENTAL.

### connectUNIX(self, address, factory, timeout=30) See Also: twisted.internet.interfaces.IReactorUNIX.connectUNIX

### connectUNIXDatagram(self, address, protocol, maxPacketSize=8192, mode=438, bindAddress=None) Connects a `ConnectedDatagramProtocol` instance to a path. EXPERIMENTAL.

### installWaker(self) Install a `waker' to allow other threads to wake up the IO thread. Overrides: `twisted.internet.base.ReactorBase.installWaker`

### listenMulticast(self, port, protocol, interface='', maxPacketSize=8192) Connects a given DatagramProtocol to the given numeric UDP port. EXPERIMENTAL. Returns: object conforming to IListeningPort.

### listenSSL(self, port, factory, contextFactory, backlog=5, interface='') See Also: twisted.internet.interfaces.IReactorSSL.listenSSL

### listenTCP(self, port, factory, backlog=5, interface='') See Also: twisted.internet.interfaces.IReactorTCP.listenTCP

### listenUDP(self, port, protocol, interface='', maxPacketSize=8192) Connects a given `DatagramProtocol` to the given numeric UDP port. EXPERIMENTAL. Returns: object conforming to `IListeningPort`.

### listenUNIX(self, address, factory, backlog=5, mode=438) See Also: twisted.internet.interfaces.IReactorUNIX.listenUNIX

### listenUNIXDatagram(self, address, protocol, maxPacketSize=8192, mode=438) Connects a given `DatagramProtocol` to the given path. EXPERIMENTAL. Returns: object conforming to `IListeningPort`.

Class Variable Details

    ### __implements__ Type: `tuple` Value:
        ((<class twisted.internet.interfaces.IReactorCore at 0x81ac30c>,
          <class twisted.internet.interfaces.IReactorTime at 0x824dbf4>,
          <class twisted.internet.interfaces.IReactorThreads at 0x82370c4>,
          <class twisted.internet.interfaces.IReactorPluggableResolver at 0x81\
        ac154>),
         <class twisted.internet.interfaces.IReactorArbitrary at 0x826c434>,
         <class twisted.internet.interfaces.IReactorTCP at 0x824e5fc>,
         <class twisted.internet.interfaces.IReactorUDP at 0x8250174>,
        ...

Generated by Epydoc 2.0 on Sat Oct 25 00:55:06 2003 | http://epydoc.sf.net