Nette\IO\SafeStream a synchronizace
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- jost125
- Člen | 7
Zdravím, z dokumentace safe streamu (https://doc.nette.org/cs/safe-stream) mi úplně nevyplnulo, jesti při zavolání dvou paralelních požadavků dojde při následujícím kódu k ‚zamknutí‘ ‚druhého‘ procesu do doby, kdy bude soubor uzavřen.
<?php
$handle = fopen('safe://' . $filepath, 'w');
fwrite($handle, '1');
// tady dělám něco výpočetně složitýho a
// co budu kešovat a nechci aby se mi mezitím spustil další proces
// protože ten by to znovu počítal a místo toho bych radši
// aby druhý proces si to už jen přečetl z keše
fclose($handle);
?>
Pokud by tomu tak bylo, dalo by se to využít k synchronizaci procesů (což potřebuji), pokud ne, nevíte někdo o nějakém dobrém způsobu, jak udělat v php něco na způsob semaforu mezi procesy?