Názor k článku Python: skriptování ve více vláknech od Inkvizitor - Fungování je jednoduché: třída implementuje metody __enter__() a...

  • Článek je starý, nové názory již nelze přidávat.
  • 23. 3. 2009 21:39

    Inkvizitor (neregistrovaný)
    Fungování je jednoduché: třída implementuje metody __enter__() a __exit__(), při vyhodnocování výrazu v konstrukci with se zavolá __enter__(), při ukončení těla bloku (i v případě vyvolání výjimky, stejně jako u finally:) se zavolá __exit__(). Takže Lock v __enter__() zavolá self.acquire(), v __exit__() je self.release() a je vymalováno.