X-Git-Url: https://wannabe.guru.org/gitweb/?a=blobdiff_plain;f=thread_utils.py;h=4db4cf68b4ef916f323f90bae492d1c59dca361f;hb=e8fbbb7306430478dec55d2c963eed116d8330cc;hp=6035b09ef2df448a7dba5ad46c90af2e594c5dbf;hpb=6cf1d61b80d02937dbca9025c1922568d42a8c73;p=python_utils.git diff --git a/thread_utils.py b/thread_utils.py index 6035b09..4db4cf6 100644 --- a/thread_utils.py +++ b/thread_utils.py @@ -1,5 +1,7 @@ #!/usr/bin/env python3 +"""Utilities for dealing with threads + threading.""" + import functools import logging import os @@ -61,7 +63,7 @@ def is_current_thread_main_thread() -> bool: def background_thread( _funct: Optional[Callable], -) -> Tuple[threading.Thread, threading.Event]: +) -> Callable[..., Tuple[threading.Thread, threading.Event]]: """A function decorator to create a background thread. *** Please note: the decorated function must take an shutdown *** @@ -104,7 +106,7 @@ def background_thread( kwargs=kwa, ) thread.start() - logger.debug(f'Started thread {thread.name} tid={thread.ident}') + logger.debug('Started thread "%s" tid=%d', thread.name, thread.ident) return (thread, should_terminate) return inner_wrapper @@ -163,7 +165,7 @@ def periodically_invoke( newargs = (should_terminate, *args) thread = threading.Thread(target=helper_thread, args=newargs, kwargs=kwargs) thread.start() - logger.debug(f'Started thread {thread.name} tid={thread.ident}') + logger.debug('Started thread "%s" tid=%d', thread.name, thread.ident) return (thread, should_terminate) return wrapper_repeat