@@ -98,8 +98,7 @@ def __init__(self, filename, queue_size=2, block_size=1024 * 1024):
98
98
self .exception = None
99
99
self .buffer = io .BytesIO ()
100
100
self .block_size = block_size
101
- # Using a daemon thread prevents programs freezing on error.
102
- self .worker = threading .Thread (target = self ._decompress , daemon = True )
101
+ self .worker = threading .Thread (target = self ._decompress )
103
102
self ._closed = False
104
103
self .running = True
105
104
self .worker .start ()
@@ -232,18 +231,17 @@ def __init__(self,
232
231
queue .Queue (queue_size ) for _ in range (threads )]
233
232
self .output_queues : List [queue .Queue [Tuple [bytes , int , int ]]] = [
234
233
queue .Queue (queue_size ) for _ in range (threads )]
235
- # Using daemon threads prevents a program freezing on error.
236
- self .output_worker = threading .Thread (target = self ._write , daemon = True )
234
+ self .output_worker = threading .Thread (target = self ._write )
237
235
self .compression_workers = [
238
- threading .Thread (target = self ._compress , args = (i ,), daemon = True )
236
+ threading .Thread (target = self ._compress , args = (i ,))
239
237
for i in range (threads )
240
238
]
241
239
elif threads == 1 :
242
240
self .input_queues = [queue .Queue (queue_size )]
243
241
self .output_queues = []
244
242
self .compression_workers = []
245
243
self .output_worker = threading .Thread (
246
- target = self ._compress_and_write , daemon = True )
244
+ target = self ._compress_and_write )
247
245
else :
248
246
raise ValueError (f"threads should be at least 1, got { threads } " )
249
247
self .threads = threads
0 commit comments