Skip to content

Commit e13eb0d

Browse files
committed
Merge pull request #324 from chmduquesne/master
Properly destroying the objects that contain daemonized threads
2 parents 7dea559 + 0497924 commit e13eb0d

File tree

2 files changed

+9
-0
lines changed

2 files changed

+9
-0
lines changed

kafka/producer/base.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -127,6 +127,7 @@ def __init__(self, client, async=False,
127127
self.async = async
128128
self.req_acks = req_acks
129129
self.ack_timeout = ack_timeout
130+
self.stopped = False
130131

131132
if codec is None:
132133
codec = CODEC_NONE
@@ -212,3 +213,8 @@ def stop(self, timeout=1):
212213

213214
if self.proc.is_alive():
214215
self.proc.terminate()
216+
self.stopped = True
217+
218+
def __del__(self):
219+
if not self.stopped:
220+
self.stop()

kafka/util.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -151,3 +151,6 @@ def stop(self):
151151
# noinspection PyAttributeOutsideInit
152152
self.timer = None
153153
self.fn = None
154+
155+
def __del__(self):
156+
self.stop()

0 commit comments

Comments
 (0)