mirror of
https://git.yoctoproject.org/poky
synced 2026-05-30 00:20:08 +00:00
oe/utils.py: Fix thread leakage in ThreadPool
In order to fix Thread leakage caused by not call join() in Threads, Pass num_tasks in ThreadPool for add all the tasks into a Queue this enable catch of Queue.Empty exception and exit the threads. classes/sstate.bbclass: Change checkstatus function to match new ThreadPool operation. (From OE-Core rev: 524d92ed7b53bef933527095e82f378b934f25ef) Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
18e902b2dc
commit
3fa32158c4
@@ -771,9 +771,10 @@ def sstate_checkhashes(sq_fn, sq_task, sq_hash, sq_hashfn, d, siginfo=False):
|
||||
bb.note("Checking sstate mirror object availability (for %s objects)" % len(tasklist))
|
||||
import multiprocessing
|
||||
nproc = min(multiprocessing.cpu_count(), len(tasklist))
|
||||
pool = oe.utils.ThreadedPool(nproc)
|
||||
pool = oe.utils.ThreadedPool(nproc, len(tasklist))
|
||||
for t in tasklist:
|
||||
pool.add_task(checkstatus, t)
|
||||
pool.start()
|
||||
pool.wait_completion()
|
||||
|
||||
inheritlist = d.getVar("INHERIT", True)
|
||||
|
||||
Reference in New Issue
Block a user