An _IProcessTransportWithConsumerAndProducer combines various interfaces to work around the issue that interfaces.IProcessTransport is incompletely defined and doesn't specify flow-control interfaces, and that proxyForInterface doesn't allow for multiple interfaces.

Inherited from IProcessTransport:

Attribute pid From before IProcessProtocol.makeConnection is called to before IProcessProtocol.processEnded is called, pid is an int giving the platform process ID of this process. pid is None at all other times.
Method closeStdin Close stdin after all data has been written out.
Method closeStdout Close stdout.
Method closeStderr Close stderr.
Method closeChildFD Close a file descriptor which is connected to the child process, identified by its FD in the child process.
Method writeToChild Similar to ITransport.write but also allows the file descriptor in the child process which will receive the bytes to be specified.
Method loseConnection Close stdin, stderr and stdout.
Method signalProcess Send a signal to the process.

Inherited from ITransport (via IProcessTransport):

Method write Write some data to the physical connection, in sequence, in a non-blocking fashion.
Method writeSequence Write an iterable of byte strings to the physical connection.
Method getPeer Get the remote address of this connection.
Method getHost Similar to getPeer, but returns an address describing this side of the connection.

Inherited from IConsumer:

Method registerProducer Register to receive data from a producer.
Method unregisterProducer Stop consuming data from a producer, without disconnecting.
Method write The producer will write data by calling this method.

Inherited from IPushProducer:

Method pauseProducing Pause producing data.
Method resumeProducing Resume producing data.

Inherited from IProducer (via IPushProducer):

Method stopProducing Stop producing data.
API Documentation for twisted, generated by pydoctor at 2020-03-25 17:34:30.