[ NetworkAdmin @ 10.11.2004. 11:52 ] @
Zdravo evo htio mih da uradim sljedece... pravim jedan mali tool koji bi u trenutku izvrasavanja treba da dovuce jedno 10 html stranica sa udaljenog servera. Da to nebi islo straanicu po stranicu u loop htio bih da dignem recimo isto toliko child processes i da svaki proces paralelno dovlaci html i snimi u zajednicku memoriju.

Evo gledam:
pcntl_exec - Executes specified program in current process space
pcntl_fork - Forks the currently running process
pcntl_signal - Installs a signal handler
pcntl_waitpid - Waits on or returns the status of a forked child
pcntl_wexitstatus - Returns the return code of a terminated child
pcntl_wifexited - Returns TRUE if status code represents a successful exit
pcntl_wifsignaled - Returns TRUE if status code represents a termination due to a signal
pcntl_wifstopped - Returns TRUE if child process is currently stopped
pcntl_wstopsig - Returns the signal which caused the child to stop
pcntl_wtermsig - Returns the signal which caused the child to terminate

ove finkcije su slabo dokumentovane a nisam ni vidio neke primjere na netu.

Ne znam mozda je zomica se ovim malo vise bavio... pitao sam i na codeworkers ali nisu mi imali nesto specijalno da preporuce.
[ -zombie- @ 11.11.2004. 01:10 ] @
uh, što volim kad me ovako prozovu.. pa još "zomica".. ;)

nego, verovatno nisam video na CW da si pitao ovo.. da jesam, dobio bi isti odgovor kao ovde.. (samo na engleskom :-P)


prvo, to što tebi treba se najlakše rešava uz pomoć non-blocking streamova.. pogledaj man za streams, naročito ove dve:

http://php.net/stream_set_blocking i
http://php.net/stream_select


a drugo, sa process-control extenzijom sam se vrlo malo, i bukvalno samo igrao.. prvo, zato što ne radi na windowsu, drugo zato što ne radi na web serveru (nego samo kao specijalno kompajlirani CLI), a znam da sam imao i treći razlog, ali sada ne mogu da ga se setim.. (a glava će me zaboleti ako se napregnem ;)

mada, stvar deluje i prilično zanimljivo, odnosno imao sam i razloga zašto sam uzeo bar da se poigram sa njom.. prvo, video sam da su neki frikovi (u pozitivnom smislu ;), pravili neke http/mail/whatever servere uz pomoć ovih funkcija..

i plus, našao sam negde jednu prilično zanimljivu ThreadClass klasu koja lepo apstrakuje par php native funkcija i svemu ovome daje lep interfejs (ala javina Thread klasa).. samo da me bog ubije ako se sećam gde sam to skinuo.. (a evo, i glava počela ponovo da me boli (temperatura))