Question

Je souhaite exécuter un script Perl sous Windows, en utilisant Strawberry Perl ou < un href = "http://www.activestate.com" "rel =" nofollow noreferrer "> ActivePerl ; Je me fiche de qui. Cependant, ce script utilise des appels flock () , qui ne semblent pas être inclus dans aucune de ces versions de Perl.

Quelqu'un peut-il aider à mettre cela sur pied?

Était-ce utile?

La solution

Le module Fcntl est-il installé? Essayez ceci:

perl.exe -MFcntl -e 1

S'il se plaint, le module Fcntl n'est pas installé. S'il ne se plaint pas, alors vous avez accès à Fcntl :: flock, alors mettez ceci dans votre script:

use Fcntl qw(:DEFAULT :flock);

et c'est parti.

Autres conseils

Essayez d’utiliser perldoc -f flock pour vérifier que tout est pris en charge & amp; examinez ensuite l’exemple donné pour connaître les critères d’utilisation de la fonction. Ici copié du perldoc:

C: > troupeau perldoc -f

 use Fcntl ':flock'; # import LOCK_* constant

 sub lock {
     flock(MBOX,LOCK_EX);
     # and, in case someone appended
     # while we were waiting...
     seek(MBOX, 0, 2);
 }

 sub unlock {
     flock(MBOX,LOCK_UN);
 }

 open(MBOX, ">>/usr/spool/mail/$ENV{'USER'}") 
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top