@@ -19,6 +19,7 @@ import gc
1919import threading
2020from thread import start_new_thread
2121from time import time
22+from uuid import uuid4
2223import searx.poolrequests as requests_lib
2324from searx.engines import (
2425 categories, engines
@@ -56,19 +57,20 @@ def search_request_wrapper(fn, url, engine_name, **kwargs):
5657def threaded_requests(requests):
5758 timeout_limit = max(r[2]['timeout'] for r in requests)
5859 search_start = time()
60+ search_id = uuid4().__str__()
5961 for fn, url, request_args, engine_name in requests:
6062 request_args['timeout'] = timeout_limit
6163 th = threading.Thread(
6264 target=search_request_wrapper,
6365 args=(fn, url, engine_name),
6466 kwargs=request_args,
65− name='search_request',
67+ name=search_id,
6668 )
6769 th._engine_name = engine_name
6870 th.start()
6971
7072 for th in threading.enumerate():
71− if th.name == 'search_request':
73+ if th.name == search_id:
7274 remaining_time = max(0.0, timeout_limit - (time() - search_start))
7375 th.join(remaining_time)
7476 if th.isAlive():