Re: zope + matplotlib delaxes() error

"Dieter Maurer" <[email protected]>
Newsgroups gmane.comp.web.zope.german
Message-ID <[email protected]>
Matthias Beyer wrote at 2009-2-2 13:37 +0100:
> ...
>Jetzt habe ich angefangen rumzuexperimentieren und versucht die Funktion 
>mittels Semaphore zu schützen: klappt aber nicht.
>
>
>def chart(self): 
>    pool_sema = BoundedSemaphore(value=1)
>    pool_sema.acquire()
>    clf()
>    pool_sema.release()
>    ...

Das wird nie gehen, denn Du erzeugst in jedem Aufruf einen neuen
Semaphor.

Wenn Du mehrere Operationen über einen Semaphor kontrollieren möchtest,
müssen sie alle den gleichen Semaphor verwenden, nicht jede ihren Eigenen.


Bei External Method musst Du sehr aufpassen: selbst, wenn Du
den Semaphor außerhalb der Funktion definierst, hast Du *keinen*
gemeinsamen Semaphor: der Code von External Method Quellen wird
in der ZODB Connection gehalten -- jede Connection hat ihre eigene Kopie.

Du musst einen Semaphor für die Benutzung in einer External Method
in einem normalen Python Modul (abgelegt auf dem Python-Pfad) definieren.


-- 
Dieter


_______________________________________________
zope mailing list
[email protected]
https://mail.dzug.org/mailman/listinfo/zope
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.