Skip to content

btmorex/object_pool

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

object_pool

object_pool is a simple thread-safe generic python object pool. Typical use:

import memcache
import object_pool

memcache_pool = ObjectPool(lambda: memcache.Client(['127.0.0.1:11211']), max_size=10)
with memcache_pool.item() as memcache:
    memcache.set(b'key', b'value')

The with statement is not required:

try:
    memcache = memcache_pool.get()
finally:
    memcache_pool.put(memcache)

It supports a timeout argument as well:

try:
    memcache = memcache_pool.get(timeout=1.0)
except ObjectPoolTimeout:
    import logging
    logging.warning('timed out trying to get memcache connection')

About

thread-safe python object pool

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages