使用reactor.spawnProcess時,它如何附加到傳入協議的讀通道?即我可以通過SSHProcessProtocol併產生bash併發送ls
並獲得響應。我明白它通過調用childDataReceived等轉儲信息..但它是如何得到ls
?我不能從這裏看到反應堆是如何連接標準桿的http://twistedmatrix.com/documents/12.1.0/api/twisted.internet.interfaces.IProcessProtocol.htmlTwisted ProcessProtocol讀取通道
1
A
回答
1
這聽起來像是一個關於實現如何工作的問題。接口顯然不是關於實現的。他們描述了一個API,並留下了實際將該API工作到其他代碼的所有細節。因此,界面IProcessProtocol
的定義/文檔不會告訴你有關實現如何工作的任何信息。
對於IProcessProtocol
,這是IProcessTransport
,恰好有傳輸的大致兩種實現。運輸實際上負責Twisted世界中的I/O。協議是解析和序列化邏輯去的地方,爲應用程序提供高級接口,而不是拋出字節字符串。
POSIX的一種實現方式是twisted.internet.process
。另一個用於Windows,位於twisted.internet._dumbwin32proc
。這些是您應該檢查其來源以瞭解實現如何工作的模塊。
相關問題
- 1. Java - 從套接字通道讀取
- 2. 在Netty 4中讀取延遲通道
- 3. 通過python讀取管道輸出行
- 4. 如何讀取多通道ADC值?
- 5. 從通道讀取或超時?
- 6. 如何使用Twisted記錄通道上的所有IRC數據?
- 7. twisted(17.5.0)SSHConnection使用先前關閉的通道(ssh_CHANNEL_OPEN_CONFIRMATION)
- 8. Twisted transport.write
- 9. 如何使用Twisted獲取IRC頻道的用戶列表
- 10. IO通道vs讀寫器
- 11. 如何通過管道讀取器獲取管道數據字符串
- 12. 你如何通過Python運行Twisted應用程序(而不是通過Twisted)?
- 13. 如何在SSH內使用Twisted隧道傳輸任何Twisted協議(如HTTP)?
- 14. 從管道讀取C
- 15. Swift - 讀取管道輸入
- 16. Jenkins管道從yaml讀取
- 17. 從管道讀取SPI
- 18. awk不讀取管道
- 19. 從管道問題讀取
- 20. 從管道讀取阻塞
- 21. 管道讀取處理
- 22. 從管道讀取錯誤
- 23. 通過jQuery讀取XML(讀取變量)
- 24. SQLAlchemy和Twisted
- 25. Asyncmongo和Twisted
- 26. Twisted和pyapns推送通知錯誤
- 27. Python - 讀取文件,在通道中找到隱藏的消息
- 28. 歡樂通道XML:如何從元素內讀取值
- 29. 通過管道或流讀取snort日誌
- 30. C管道通信寫入/讀取文本的功能切入
'.spawnProcess()'接受任何提供'IProcessProtocol'的東西。什麼是問題? – jfs 2012-08-03 05:41:49