目的:創(chuàng)建多個(gè)進(jìn)程去復(fù)制一個(gè)目錄下的所有文件到另一個(gè)目錄(使用場景同樣適合其他多進(jìn)程場景如批量發(fā)送郵件,短信等)
效果:將file目錄下的a.php,b.php,c.php 移動到copy_file目錄下的a.php,b.php,c.php? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?進(jìn)程1 復(fù)制a.php 進(jìn)程2 復(fù)制b.php 進(jìn)程3 復(fù)制c.php
遇見的問題:進(jìn)程1會復(fù)制a.php b.php c.php 進(jìn)程2和進(jìn)程3會再復(fù)制一遍
解決辦法:利用redis,將要復(fù)制的文件地址和復(fù)制到的地址都放進(jìn)redis里,然后循環(huán)去復(fù)制
優(yōu)化:可以修改成一個(gè)類,類里包括進(jìn)程的控制和具體的復(fù)制文件方法,復(fù)制文件內(nèi)添加移動標(biāo)示,優(yōu)化的代碼見圖圖片2,3
代碼:

圖片1

圖片2

圖片3