Gary, since you're the author of zc.twist (as I understand), I take this as an exhaustive answer, and thank you :)
However, I'm still curious to know zc.twist would provide any benefit when used together with a thread pool. The thread examples in its README (which I find hard to understand) indicate that there must be some meaning to using zc.twist with threads. Thanks again and best regards, Erik 2011/7/29 Gary Poster <gary.pos...@gmail.com>: > Hello Erik. As the author, I'll suggest that you move on to a ZODB > connection pool used by the usual Twisted-provided thread pool. zc.twist is > maybe interesting and maybe clever, but of very limited usefulness. I > suspect it is only used in zc.async, and that's probably as it should be. > It's a case of premature generalization. > > If you are going to use Twisted in anything like a normal way, and the ZODB > in anything like a normal way, use a connection pool and threads. > > Best, > > Gary > > > On Jul 28, 2011, at 4:12 PM, Erik Allik wrote: > >> Hello everyone, >> >> I hope this is the right mailing list to post this question to. >> >> I'm trying to build an Twisted application that uses ZODB and I've >> also found zc.twist. >> I've read its README as well as the source code to try to understand >> how exactly and why I should use zc.twist, and also asked the same >> questions on irc.freenode.net #zope but without a conclusive answer. >> >> What I'm not able to understand is whether using zc.twist will allow >> me to do all ZODB access in the main Twisted thread, or if still need >> to set up a thread pool and deferToThread any code that accesses the >> DB. >> >> The README of zc.twist has: >> "Everything can be done within the main thread, so it can be full-bore >> Twisted usage, without threads." >> >> However, looking at the source code of zc.twist, I cannot find any >> reference to async communication (callbacks/polling) with ZODB, so >> it's difficult to conclude that all DB access is non-blocking and can >> be done in a single thread. Also, there are some examples with threads >> in the README. >> >> I would highly appreciate if somebody with a clearer understanding of >> this could explain to me whether I in fact need to set up a thread >> pool, and in any case, what exactly is zc.twist for regardless of >> whether it needs to be used with a threadpool or not. >> >> Thanks in advance! >> >> Regards, >> Erik Allik >> >> P.S. I'd be very thankful for any references to open source >> projects/code using ZODB with Twisted, or even zc.twist (besides >> zc.async). >> _______________________________________________ >> For more information about ZODB, see the ZODB Wiki: >> http://www.zope.org/Wikis/ZODB/ >> >> ZODB-Dev mailing list - ZODB-Dev@zope.org >> https://mail.zope.org/mailman/listinfo/zodb-dev > > _______________________________________________ For more information about ZODB, see the ZODB Wiki: http://www.zope.org/Wikis/ZODB/ ZODB-Dev mailing list - ZODB-Dev@zope.org https://mail.zope.org/mailman/listinfo/zodb-dev