Home >Backend Development >Python Tutorial >How to use threads in python

How to use threads in python

silencement
silencementOriginal
2019-05-25 11:24:383524browse

How to use threads in python

Python thread operation

1. Global lock

1. In Python In , the execution of Python code is controlled by the Python virtual machine. In the Python virtual machine, only one thread is executing at the same time. Just like multiple processes running in a single-CPU system, multiple programs can be stored in the memory, but At any time, only one program is running on the CPU. Similarly, multiple threads can be "running" in the Python interpreter, but at any time, only one thread is running in the Python interpreter.

2. Access to the Python virtual machine is controlled by the global interpreter lock [GIL]. It is this lock that ensures that only one thread is running at the same time.

3. In a multi-threaded environment, the execution method of the Python virtual machine is:

How to use threads in python

2. Thread module

Python provides [thread] and [threading] modules. In multi-thread programming, it is recommended to use the [threading] module. This is because:

1. In the [thread] module, when the main thread exits, other threads that have not been cleared will not finish running. will be logged out. However, in the [threading] module, it can be ensured that the process will end only after all "important" sub-threads (the important sub-threads here refer to the daemon threads) have finished running

2. In [threading] The module is a more advanced thread module. It not only provides the Thread class, but also provides a thread synchronization mechanism

thread module

Built-in functions

How to use threads in python


The above is the detailed content of How to use threads in python. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn