Fix random dataloader freezes (#18697)

Co-authored-by: UltralyticsAssistant <web@ultralytics.com>
This commit is contained in:
Mohammed Yasin 2025-01-16 01:53:38 +08:00 committed by GitHub
parent deb87d8ce3
commit be819455af
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -47,6 +47,13 @@ class InfiniteDataLoader(dataloader.DataLoader):
for _ in range(len(self)):
yield next(self.iterator)
def __del__(self):
"""Ensure that workers are terminated."""
for w in self.iterator._workers: # force terminate
if w.is_alive():
w.terminate()
self.iterator._shutdown_workers() # cleanup
def reset(self):
"""
Reset iterator.