Article View: pl.comp.lang.perl
Article #1229Re: Jak zablokowac dostep do pliku
From: Piotr Piatkowski
Date: Tue, 14 Apr 1998 18:03
Date: Tue, 14 Apr 1998 18:03
19 lines
1723 bytes
1723 bytes
Marek Matula <marekm@zeus.polsl.gliwice.pl> wrote: : Na razie problem rozwiazalem dosc "czolgowo": na poczatku skryptu : tworze katalog (pelniacy role semafora), a na koncu kasuje go. Gdy : drugi skrypt zostanie wywolany w czasie trwania pierwszego - katalogu : nie uda sie stworzyc, i skrypt "wie", ze musi chwile zaczekac. : Rozwiazanie to ma taka wade, ze katalog, w ktorym sa pliki musi miec : prawa zapisu (zeby dalo sie tworzyc katalog) - a to mi sie nie podoba. Wydaje mi się że to całkiem dobry kierunek, z tym że wystarczy tworzyć plik a nie katalog, i umieszczać go w /tmp/ - wtedy znika problem praw dostępu. Oczywiście powinieneś wymyśleć jakąś możliwie oryginalną nazwę, żeby nie było konfliktu z innymi programami. Żeby próba utworzenia pliku który już istnieje powodowała błąd, użyj funkcji sysopen( F, "/tmp/.moj_program.lock", 0600, O_EXCL|O_CREAT ) Nie zapomnij o use Fcntl na początku (żeby zdefiniować flagi O_xxx) -- Piotr Piątkowski, Uczelniane Centrum Informatyki, AGH Krakow, POLAND
Technical Details
Message-ID:
<6h08du$khj$1@galaxy.uci.agh.edu.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!orion.cst.tpsa.pl!news.onet.pl!agh.edu.pl!agh.edu.pl!not-for-mailReferences:
<353398ce.1739189@news.icm.edu.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!orion.cst.tpsa.pl!news.onet.pl!agh.edu.pl!agh.edu.pl!not-for-mail From: Piotr Piatkowski <kompas@galaxy.uci.agh.edu.pl> Newsgroups: pl.comp.lang.perl Subject: Re: Jak zablokowac dostep do pliku Date: 14 Apr 1998 20:03:42 +0200 Organization: University of Mining & Metallurgy Lines: 19 Message-ID: <6h08du$khj$1@galaxy.uci.agh.edu.pl> References: <353398ce.1739189@news.icm.edu.pl> NNTP-Posting-Host: galaxy.uci.agh.edu.pl Mime-Version: 1.0 X-Newsreader: TIN [UNIX 1.3 unoff BETA 971018; sun4m SunOS 5.5.1] Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit