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:
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
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!