CGI x locking

Jiri Kratochvil jkratochvil na fincommaterna.com
Čtvrtek Leden 17 08:06:29 MET 2002


A co pouzit frontu zprav z IPC.
Druhej proces bezi jako deamon, sbira pozadavky z ty fronty od vsec 
procesu a zapisuje do jednoho souboru.

Jindrich Kubec wrote:

> Hi,
> 
> nasledujici kod je z redirektorovyho skriptu. Fungovat to funguje, ale
> druha instance ceka, nez prvni zapise a uvolni lock. Dalo by se nejak
> udelat, at to tomu klientovi posle tu 302 hned a az pak si to tam
> zapisuje do toho reportu? (Jiny thread, jiny proces, zavreni handle?).
> 
> print "Status: 302\nLocation: $loc\n\n";
> 
> if( open( REPORT, ">>/var/www/cgi-bin/redir.rep") )
> {
>         flock( REPORT, LOCK_EX );
>         # and, in case someone appended
>         # while we were waiting...
>         seek( REPORT, 0, 2 );
> 	print REPORT "something\n";
>         flock( REPORT, LOCK_UN );
> 	close REPORT;
> }
> 
> exit;
> 
> 




Další informace o konferenci Perl