[Python] leggere lo standard output di un programma esterno

Walter Valenti waltervalenti a yahoo.it
Ven 1 Giu 2012 14:08:29 CEST



>>  Es:
>>  import fcntl
>>  fk=open(lock_path,"w")
>>  try:
>>       fcntl.flock(fk,fcntl.LOCK_EX + fcntl.LOCK_NB)  ## lock non bloccante
>>       ### FAI QUELLO CHE DEVI !!
>>  except:
>>       ### ESCI ###
>> 
>>  Dove lock_path è in path assoluto del file che usi come lock.
>> 
> Grazie della risposta.
> non conoscevo fcntl
> Ok ma come ho risposto a Giovanni non vorrei "uscire" se il lock è 
> attivo ma "mettere in coda" la chiamata al comando in attesa che il 
> lock 
> venga distrutto.


In questo caso ti basta usare un lock bloccante:
fcntl.flock(fk,fcntl.LOCK_EX)

rimane in attesa fino a che non viene rilasciato il lock precedente.


Walter


Maggiori informazioni sulla lista Python