2012-11-08 10 views
9

Nella documentazione del modulo threading si diceUtilizzando threading.Lock come contesto direttore

Tutti gli oggetti forniti da questo modulo che hanno acquisire() e di rilascio() metodi possono essere utilizzati come contesto manager per a con la dichiarazione . Il metodo acquire() verrà chiamato quando il blocco è immesso e release() verrà chiamato quando si esce dal blocco.

Mi chiedevo se si chiama in modalità blocco o non blocco?

risposta

8

Dall'esame dello CPython source, sembra che venga chiamato con argomenti predefiniti, ovvero in modalità di blocco.

I metodi che si desidera esaminare in particolare sono __enter__(), che viene richiamato all'inizio del blocco with e __exit__(), che viene chiamato alla fine.

Problemi correlati