Move file writes and reads to separate thread
This commit is contained in:
parent
5d113757df
commit
58214c0ac3
3 changed files with 71 additions and 3 deletions
22
src/util/ThreadPool.py
Normal file
22
src/util/ThreadPool.py
Normal file
|
@ -0,0 +1,22 @@
|
|||
import gevent.threadpool
|
||||
|
||||
|
||||
class ThreadPool:
|
||||
def __init__(self, max_size):
|
||||
self.setMaxSize(max_size)
|
||||
|
||||
def setMaxSize(self, max_size):
|
||||
self.max_size = max_size
|
||||
if max_size > 0:
|
||||
self.pool = gevent.threadpool.ThreadPool(max_size)
|
||||
else:
|
||||
self.pool = None
|
||||
|
||||
def wrap(self, func):
|
||||
if self.pool is None:
|
||||
return func
|
||||
|
||||
def wrapper(*args, **kwargs):
|
||||
return self.pool.apply(func, args, kwargs)
|
||||
|
||||
return wrapper
|
Loading…
Add table
Add a link
Reference in a new issue