有一个关于Perl线程here:的教程 然而,关于多线程程序模型的信息非常少:Boss / Workers,Work Crew,Pipeline。 我对如何实现这些模型没有任何想法。
你能不能给我一些关于这些的工作代码示例?
更新
感谢Ojosilva提供了一些链接,我在搜索这些问题之前用Google搜索,我来到其中两个。
第一个例子是旧的,不好。剩下的两个很好。但是一些涉及文件输入/输出和变量共享访问的“真实世界”示例将会很棒。
例如,我是一位为喜欢Perl的上帝工作的计算机专家。他以标签分隔的文本文件提供世界各国的地址簿,其中许多都是几GB。他希望我解析这些文本文件的任意组合(例如addressbook_usa.txt,addressbook_russia.txt,addressbook_india.txt)来做一些统计(例如关于年龄,性别,世界的分布)。他希望我向他展示Perl的魔力,这项工作不仅可以完成,而且可以快速完成,因为他不想浪费他强大的多核工作站,拥有大量的RAM和磁盘空间。
仅供参考我还查看了cpan上的Thread :: Pool和Thread :: Pool :: Simple模块。前者非常有前途,但我未能安装在我的工作站上。后者很简单,没有示例代码。再一次,我的观点是找到一些东西来学习如何实现多线程Perl,而不仅仅是跳到顶部。
答案 0 :(得分:5)
答案 1 :(得分:0)
这是一个很大的代码库,但对于一个更复杂的实际示例:Padre(IDE)具有相当复杂的工作池设置。