linux-l: perl: flock auf dbm-descriptor ?

JSC schlegel at lnx01.tfh-berlin.de
Fr Nov 7 12:17:13 CET 1997


hallo,

ich moechte eine dbmdatei unter perl oeffnen:

   dbmopen(%DB, $MANTRAG, undef) or
      &fehler("${E1}");

und dann einen flock call auf den descriptor
ausfuehren.

   while( ! flock( DB, $LOCK_SH | $LOCK_NB ) ){
   ...
   }

und es geht irgendwie nicht. mit dem flock() call
auf "normale" descriptoren funktioniert das. die
vorgehensweise hab ich aber nur einmal in einem
buch gesehen. da stand:
01a: dbmopen(%counters,"filename", 0666);
OR
01b: OPEN(counters,"<filename");
02: flock(counters,1);
...
07: dbmclose(counters);
08: flock(counters,8);

frage: kann sowas gehen, da DB bei mir ja ein
associative array darstellt und keinen wirklichen
filedescriptor ?
wie komme ich an den wirklichen filedescriptor ?
muss ich dbmopen() durch tie() ersetzen, um die
benoetigte funktionalitaet zu erreichen ?

bye
Jens
-- 
 --------------------------------------------------------------
| Jens Schlegel                                                |
| TFH Berlin         email: schlegel at tfh-berlin.de             |
 --------------------------------------------------------------




Mehr Informationen über die Mailingliste linux-l