| 
	
 | 
 Posted by Chris Hope on 09/18/05 23:38 
Bill Godfrey wrote: 
 
> Hiya. I'm sure this question has come up on this group many times 
> before, but I can't find any prior discussion. (Appologies if I missed 
> it.) 
>  
> I have a PHP program looking a bit like this. 
>  
> Read a load of data over the network from node 1. 
> Process the data. 
> Read a load of data over the network from node 2. 
> Process the data. 
> ... 
> Read a load of data over the network from node n. (2<n<50) 
> Process the data. 
> Combine all the data together and report. 
>  
> The time spent waiting for the remote node could be better spent 
> processing the data. I'd also like to make many requests at the same 
> time, rather than waiting for one to report before making the next 
> request. 
>  
> In short... 
>  
> For each node, start a ReadAndProcess thread. 
> Wait for each thread to report back in the order they complete. 
> Once all threads have reported, sort, combine and report. 
>  
> How do PHP developers do this please? 
>  
> (If I were using C#, I'd create and start a Thread for each node. The 
> main thread would then enter a Monitor.Wait state as each worker 
> thread performed a Monitor.Pulse on completion, leaving data in a 
> shared object.) 
>  
> Bill, context switch! 
 
There's no threading as far as I am aware but you can fork subprocesses: 
http://www.electrictoolbox.com/article/php/process-forking/  
 
--  
Chris Hope | www.linuxcdmall.com
 
[Back to original message] 
 |