道歉,如果這已被覆蓋之前 - 我做了我的搜索,但可能可能不知道使用正確的術語。處理單個陣列的多個「代理」
此過程由PHP處理。
這裏的情況:
我有一個大型的文件名數組。我已經打開這些文件並將其內容輸入到數據庫中。一次處理這些文件需要24小時以上,並且這些文件每天都會更新。
將單個大陣列分解爲四個較小的陣列並運行併發進程會在24小時窗口過去之前完成作業,但有時一個或兩個進程將在其他時間之前完成幾個小時,因爲文件大小每天都有所不同。
就像誰炒股零售貨架(還有誰工作過那個噩夢?)間距,以幫助有什麼完成自己的任務後留下的人,我想有一個腳本在地方,這些「代理人」照着做。
這裏是什麼,我想通了一些基礎知識 - 這可能是錯的,我不是太自豪地抗議,如果我:-)
$files = array('file1','file2','file3','file4','file5');
//etc... on to over 4k elements
while($file = array_pop($files)){
//Something in here... I have no idea what.
}
想法?類似於四個函數調用或四個循環內的整個'while'已經跨越了我的想法,但我很確定它將等待執行後續調用,直到前一個(s)完成。
任何幫助表示讚賞。我嚴重卡在這一個!
謝謝!
您確定要使用PHP來做到這一點嗎?使用支持簡單多線程的選擇語言(如C#中的ThreadPool) – CodeZombie
Python .....也許這裏的答案 –
這是我最熟悉的語言,抓取源文件的代碼是用PHP編寫的,但它是從一個bash控制檯而不是一個網站運行的 - 所以一些shell腳本完全處於可能的範圍之內。 – user1075581