线程安全的python对象池
object_pool的Python项目详细描述
object_poll是一个简单的线程安全通用python对象池。典型的 使用:
importmemcacheimportobject_poolmemcache_pool=ObjectPool(lambda:memcache.Client(['127.0.0.1:11211']),max_size=10)withmemcache_pool.item()asmemcache:memcache.set(b'key',b'value')
不需要with语句:
try:memcache=memcache_pool.get()finally:memcache_pool.put(memcache)
它还支持timeout参数:
try:memcache=memcache_pool.get(timeout=1.0)exceptObjectPoolTimeout:importlogginglogging.warning('timed out trying to get memcache connection')