如何解决多进程Pipe包装器损坏:某些东西挂了 V5
增强的Python多处理数据管道包装器
这是目标...
客观
这是我正在从事的一个大型项目。这是重要的部分,它将大大简化程序中的报告传输。该程序针对数百万个输入测试功能,并使用多重处理来加快处理速度。 Source code on Pastebin。
目标和利益
简单地说,multiprocessing.Pipe()
不足。它应该能够处理大量字符串并在发送方和接收方之间切换进程执行。我写这是为了实现:
- 自动错误处理
- 传输错误分类
- 数据传输分块和重组
- 无限的数据传输大小
- 流程同步
- 简单抽象以增强可用性
前问题
它有一个我找不到的怪异错误。几天后,还有大量文档,但它不是固定的。我已经离开了很多调试行。尝试输入“ hi”:您不会看到“ Receiver.Test:Output:hi”,但应该看到。再试一次,它会挂起:Sample output。
由亲爱的朋友解决。
测试
GPE有效。前两个测试都可以工作。对于测试1,此source code正确且一致地输出these results。对于测试2,此source code正确输出了类似these results的内容。对于测试3,此source code正确输出类似these results的内容。
请!
是时候寻求帮助了。它是一个较大项目的一部分。公平地说,有很多代码行。这应该是
multiprocessing
模块的一部分。我很谦虚有人可以告诉我吗?请?有人吗?
没人回答...
解决方法
问题
在receive_oscillate
中,yield from
似乎永远不会消失。
注释
此外,深层嵌套的函数和一个衬里复合条件对Python而言并不是特质。此外,分解深层嵌套的功能并添加自动化的单元测试将有助于减少错误并简化维护。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。