perl多进程解决方案

perl多进程
perl在什么情况下写多进程比较好,能不能给个例子参考。

------解决方案--------------------
不只是Perl,任何程序。

在多指令流多数据流(MIMD)、单指令流多数据流(SIMD)的情况下均可以采用多进程,这种也是最简单和最有效的多进程,进程间不存在相互干扰、通信的情况。有些具有相关依赖关系的进程,在改进设计之后,也可以避免产生进程间通信的情况。

在任务划分开后,以进程为开发单元会降低开发复杂度。

例如,你有一堆文件,根据一定的规则,将文件ftp到不同的计算机上。你可以将文件分成若干组,这些组同时启动ftp。(SIMD)


------解决方案--------------------
当然,我所谓的SIMD和MIMD是从程序的角度来说的。如果同一个类似的操作,只是数据不同,程序代码完全一致,可以并发运行,就是我所说的SIMD;如果存在多个数据流,并且多个数据流的处理方式不一样,由不同的程序来操作,并且也可以并发运行,就是我所说的MIMD。

从处理器的角度来说,SIMD是指由一个控制器控制下的对多个数据流的并发处理,称为SIMD;由多个控制器控制多个处理器对多个数据流的并发处理,称为MIMD。