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

@@ -1332,7 +1332,7 @@ class ArchManager(SoftwareManager, SettingsController):
thread_fill_aur = None
if aur_replacers:
thread_fill_aur = Thread(target=self._fill_aur_providers, args=(aur_replacers, actual_replacers))
thread_fill_aur = Thread(target=self._fill_aur_providers, args=(aur_replacers, actual_replacers), daemon=True)
thread_fill_aur.start()
if repo_replacers:
@@ -3774,15 +3774,15 @@ class ArchManager(SoftwareManager, SettingsController):
name_priority = dict()
fill_suggestions = Thread(target=self._fill_suggestions, args=(name_priority,))
fill_suggestions = Thread(target=self._fill_suggestions, args=(name_priority,), daemon=True)
fill_suggestions.start()
available_packages = dict()
fill_available = Thread(target=self._fill_available_packages, args=(available_packages,))
fill_available = Thread(target=self._fill_available_packages, args=(available_packages,), daemon=True)
fill_available.start()
ignored_pkgs = set()
fill_ignored = Thread(target=pacman.fill_ignored_packages, args=(ignored_pkgs,))
fill_ignored = Thread(target=pacman.fill_ignored_packages, args=(ignored_pkgs,), daemon=True)
fill_ignored.start()
fill_suggestions.join()
@@ -3817,7 +3817,7 @@ class ArchManager(SoftwareManager, SettingsController):
if filter_installed:
ignored_updates = set()
thread_fill_ignored_updates = Thread(target=self._fill_ignored_updates, args=(ignored_updates,))
thread_fill_ignored_updates = Thread(target=self._fill_ignored_updates, args=(ignored_updates,), daemon=True)
thread_fill_ignored_updates.start()
else:
ignored_updates, thread_fill_ignored_updates = None, None
@@ -3865,7 +3865,7 @@ class ArchManager(SoftwareManager, SettingsController):
update_ignored=pkg_updates_ignored)
if disk_loader:
t = Thread(target=self._fill_cached_if_unset, args=(pkg, disk_loader))
t = Thread(target=self._fill_cached_if_unset, args=(pkg, disk_loader), daemon=True)
t.start()
caching_threads.append(t)

View File

@@ -68,7 +68,7 @@ class DependenciesAnalyser:
if not repository:
for name in missing_names:
t = Thread(target=self._fill_repository, args=(name, missing_root))
t = Thread(target=self._fill_repository, args=(name, missing_root), daemon=True)
t.start()
threads.append(t)
@@ -518,7 +518,8 @@ class DependenciesAnalyser:
if aur_providers_no_data:
aur_providers_data = dict()
aur_data_filler = Thread(target=self._fill_aur_updates_data,
args=(aur_providers_no_data, aur_providers_data))
args=(aur_providers_no_data, aur_providers_data),
daemon=True)
aur_data_filler.start()
if repo_providers_no_data:

View File

@@ -88,7 +88,9 @@ class MultiThreadedDownloader:
watcher.print("Could not download '{}' from mirror '{}'".format(pkgname, mirror))
else:
self.logger.info("Package '{}' successfully downloaded".format(pkg['n']))
t = Thread(target=self.download_package_signature, args=(pkg, url, output_path, root_password, watcher), daemon=True)
t = Thread(target=self.download_package_signature,
args=(pkg, url, output_path, root_password, watcher),
daemon=True)
t.start()
self.async_downloads_lock.acquire()
self.async_downloads.append(t)