繁体   English   中英

Twisted ProcessProtocol读取通道

[英]Twisted ProcessProtocol read channel

当使用reactor.spawnProcess时,它如何附加到传入的协议的读取通道上? 即我可以传递SSHProcessProtocol并生成bash并发送ls并获得响应。 我知道它通过调用childDataReceived等来转储信息。但是它是怎么得到ls呢? 我从这里看不到反应堆如何连接标准输入http://twistedmatrix.com/documents/12.1.0/api/twisted.internet.interfaces.IProcessProtocol.html

这听起来像是有关实现工作方式的问题。 接口显然与实现无关。 他们描述了一个API,并将使该API实际工作的所有细节留给其他代码。 因此,接口IProcessProtocol的定义/文档不会告诉您实现的工作原理。

IProcessProtocol传输大约有两种实现,即IProcessTransport 传输负责在Twisted世界中实际执行I / O。 协议是解析和序列化逻辑所要去的地方,可为应用程序提供比抛出字节字符串更高级别的接口。

对于POSIX,一种实现是在twisted.internet.process 对于Windows,另一个在twisted.internet._dumbwin32proc 这些是您应该检查其来源的模块,以了解实现的工作原理。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM