How to stop a specific thread in Python 2.7?
Cameron Simpson
cs at cskk.id.au
Wed Sep 25 16:44:09 EDT 2024
On 25Sep2024 19:24, marc nicole <mk1853387 at gmail.com> wrote:
>I want to know how to kill a specific running thread (say by its id)
>
>for now I run and kill a thread like the following:
># start thread
>thread1 = threading.Thread(target= self.some_func(), args=( ...,), )
>thread1.start()
># kill the thread
>event_thread1 = threading.Event()
>event_thread1.set()
>
>I know that set() will kill all running threads, but if there was thread2
>as well and I want to kill only thread1?
No, `set()` doesn't kill a thread at all. It sets the `Event`, and each
thread must be checking that event regularly, and quitting if it becomes
set.
You just need a per-thred vent instead of a single Event for all the
threads.
Cheers,
Cameron Simpson <cs at cskk.id.au>
More information about the Python-list
mailing list