On Monday 08 October 2001 11:07 am, sean.upton@uniontrib.com wrote:
I guess what I am trying to figure out, is how I would have non-persistent connection objects instantiated for each thread inside Zope upon Zope startup within my product code. I'm not even sure where to start, or if I'm going about this the wrong way; I would prefer not to have to rewrite my data API classes to work with a DA... thoughts?
this is laced with pitfalls since its very app centric to your application. but you might want to give this tss/tls (thread local/specific storage) i made for something similiar a try. /Members/k_vertigo and try something like myfolder def __init__(self, id, title) self.tssdb = ThreadLocalStorage() def getFooObject(): db = self._getDb() db.getMyObjects(type='foo') def _getDb(): db = self.tssdb.get(None) if not db: db = self._open_connection() self.tssdb.set(db) return db def open_connect() basically the idea was to create in memory objects that were not tied to the persistent machinery but didn't have to deal with the extra overhead of locking by keeping per thread copies using get_ident as an accessor. cheers kapil