enhancement: marked several threads as 'daemon' for a faster termination

This commit is contained in:
Vinicius Moreira
2023-11-26 11:16:43 -03:00
parent 676f4300b7
commit 925aaf35c5
14 changed files with 46 additions and 33 deletions

View File

@@ -171,7 +171,7 @@ class GenericSoftwareManager(SoftwareManager, SettingsController):
for man in self.managers:
if self._can_work(man):
t = Thread(target=self._search, args=(norm_query, is_url, man, disk_loader, res))
t = Thread(target=self._search, args=(norm_query, is_url, man, disk_loader, res), daemon=True)
t.start()
threads.append(t)
@@ -234,7 +234,9 @@ class GenericSoftwareManager(SoftwareManager, SettingsController):
disk_loader = self.disk_loader_factory.new()
disk_loader.start()
t = Thread(target=self._fill_read_installed, args=(man, disk_loader, net_available, results))
t = Thread(target=self._fill_read_installed,
args=(man, disk_loader, net_available, results),
daemon=True)
t.start()
read_threads.append(t)
else:
@@ -248,7 +250,9 @@ class GenericSoftwareManager(SoftwareManager, SettingsController):
disk_loader = self.disk_loader_factory.new()
disk_loader.start()
t = Thread(target=self._fill_read_installed, args=(man, disk_loader, net_available, results))
t = Thread(target=self._fill_read_installed,
args=(man, disk_loader, net_available, results),
daemon=True)
t.start()
read_threads.append(t)
@@ -510,7 +514,8 @@ class GenericSoftwareManager(SoftwareManager, SettingsController):
suggestions, threads = [], []
for man in self.managers:
t = Thread(target=self._fill_suggestions,
args=(suggestions, man, int(self.config['suggestions']['by_type']), filter_installed))
args=(suggestions, man, int(self.config['suggestions']['by_type']), filter_installed),
daemon=True)
t.start()
threads.append(t)

View File

@@ -187,7 +187,7 @@ class AdaptableFileDownloader(FileDownloader):
msg.write(f' ( {get_human_size_str(known_size)} )')
watcher.change_substatus(msg.getvalue())
else:
Thread(target=self._concat_file_size, args=(file_url, msg, watcher)).start()
Thread(target=self._concat_file_size, args=(file_url, msg, watcher), daemon=True).start()
else:
msg.write(' ( ? Mb )')
watcher.change_substatus(msg.getvalue())

View File

@@ -533,14 +533,14 @@ class GenericSettingsManager(SettingsController):
ti = time.time()
save_threads, warnings, success_list = [], [], []
save_core = Thread(target=self._save_core_settings, args=(component, success_list, warnings))
save_core = Thread(target=self._save_core_settings, args=(component, success_list, warnings), daemon=True)
save_core.start()
save_threads.append(save_core)
if self._settings_views:
for views in self._settings_views.values():
save_view = Thread(target=self._save_views, args=(views, success_list, warnings))
save_view = Thread(target=self._save_views, args=(views, success_list, warnings), daemon=True)
save_view.start()
save_threads.append(save_view)

View File

@@ -198,7 +198,7 @@ class TrayIcon(QSystemTrayIcon):
self.show_manage_window()
def verify_updates(self, notify_user: bool = True):
Thread(target=self._verify_updates, args=(notify_user,)).start()
Thread(target=self._verify_updates, args=(notify_user,), daemon=True).start()
def _verify_updates(self, notify_user: bool):
self.notify_updates(self.manager.list_updates(), notify_user=notify_user)