fix DataLoader single process mode exit SIGABRT error. (#27850)

* fix DataLoader single process mode exit SIGABRT error. test=develop
swt-req
Kaipeng Deng 4 years ago committed by GitHub
parent 7750844f33
commit d17681dcc7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -346,6 +346,12 @@ class _DataLoaderIterSingleProcess(_DataLoaderIterBase):
def next(self):
return self.__next__()
def __del__(self):
# _blocking_queue in keep order mode holds sub-threads
# need to release thread resources on unexpected exit
if self._blocking_queue:
self._blocking_queue.close()
# NOTE(chenweihang): _worker_loop must be top level method to be pickled
def _worker_loop(dataset, dataset_kind, indices_queue, out_queue, done_event,

Loading…
Cancel
Save