From 7e6f1df3f5cacf0501832e12149f5484d7a91ffa Mon Sep 17 00:00:00 2001 From: vakarisz Date: Wed, 9 Mar 2022 16:55:22 +0200 Subject: [PATCH] Agent: Make thread name mandatory for creating daemon threads --- monkey/infection_monkey/utils/threading.py | 10 ++++------ .../infection_monkey/utils/test_threading.py | 2 +- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/monkey/infection_monkey/utils/threading.py b/monkey/infection_monkey/utils/threading.py index d1b84523b..70f48bbe9 100644 --- a/monkey/infection_monkey/utils/threading.py +++ b/monkey/infection_monkey/utils/threading.py @@ -1,21 +1,21 @@ import logging from itertools import count from threading import Event, Thread -from typing import Any, Callable, Iterable, Optional, Tuple +from typing import Any, Callable, Iterable, Tuple logger = logging.getLogger(__name__) def run_worker_threads( target: Callable[..., None], - name_prefix: Optional[str] = None, + name_prefix: str, args: Tuple = (), num_workers: int = 2, ): worker_threads = [] counter = run_worker_threads.counters.setdefault(name_prefix, count(start=1)) for i in range(0, num_workers): - name = None if name_prefix is None else f"{name_prefix}-{next(counter)}" + name = f"{name_prefix}-{next(counter)}" t = create_daemon_thread(target=target, name=name, args=args) t.start() worker_threads.append(t) @@ -27,9 +27,7 @@ def run_worker_threads( run_worker_threads.counters = {} -def create_daemon_thread( - target: Callable[..., None], name: Optional[str] = None, args: Tuple = () -) -> Thread: +def create_daemon_thread(target: Callable[..., None], name: str, args: Tuple = ()) -> Thread: return Thread(target=target, name=name, args=args, daemon=True) diff --git a/monkey/tests/unit_tests/infection_monkey/utils/test_threading.py b/monkey/tests/unit_tests/infection_monkey/utils/test_threading.py index 8b55cc9b5..915099f04 100644 --- a/monkey/tests/unit_tests/infection_monkey/utils/test_threading.py +++ b/monkey/tests/unit_tests/infection_monkey/utils/test_threading.py @@ -9,7 +9,7 @@ from infection_monkey.utils.threading import ( def test_create_daemon_thread(): - thread = create_daemon_thread(lambda: None) + thread = create_daemon_thread(lambda: None, name="test") assert thread.daemon