summaryrefslogtreecommitdiff
path: root/kafka/util.py
diff options
context:
space:
mode:
authorMahendra M <mahendra.m@gmail.com>2013-06-11 14:44:45 +0530
committerMahendra M <mahendra.m@gmail.com>2013-06-11 14:44:45 +0530
commita4601d3a1bf6792e0d57e600f48e891ef2be1528 (patch)
treedf99626300f685359e0c5ec9569c978464278366 /kafka/util.py
parent77b8301e253774e09d13ff6b7c132fd51e6d9091 (diff)
downloadkafka-python-a4601d3a1bf6792e0d57e600f48e891ef2be1528.tar.gz
Spawn the commit thread only if necessary
If there are no messages being consumed, the timer keeps creating new threads at the specified intervals. This may not be necessary. We can control this behaviour such that the timer thread is started only when a message is consumed
Diffstat (limited to 'kafka/util.py')
-rw-r--r--kafka/util.py3
1 files changed, 3 insertions, 0 deletions
diff --git a/kafka/util.py b/kafka/util.py
index 10bf838..b3112d5 100644
--- a/kafka/util.py
+++ b/kafka/util.py
@@ -86,14 +86,17 @@ class ReentrantTimer(object):
self.timer = None
self.t = t
self.fn = fn
+ self.is_active = False
def start(self):
if self.timer is not None:
self.timer.cancel()
self.timer = Timer(self.t / 1000., self.fn)
+ self.is_active = True
self.timer.start()
def stop(self):
self.timer.cancel()
self.timer = None
+ self.is_active = False