Home  >  Article  >  Backend Development  >  What can the python threading module do? (detailed examples)

What can the python threading module do? (detailed examples)

乌拉乌拉~
乌拉乌拉~Original
2018-08-23 17:41:442016browse

In the following article, let’s take a look at what the python threading module is. Learn about the python threading module and what role the threading module can play in python programming.

Threading module

Threading is used to provide thread-related operations. A thread is the smallest unit of work in an application.

Threading is used to provide thread-related operations

The threading module is built on the _thread module. The thread module handles and controls threads in a low-level, primitive way, while the threading module provides a more convenient API to handle threads by secondary encapsulation of threads.

import threading
import time

def worker(num):
    """
    thread worker function
    :return:
    """
    time.sleep(1)
    print("The num is  %d" % num)
    return
    
for i in range(20):
    t = threading.Thread(target=worker, args=(i,),name =“t. % d” % i)
    t.start()

The above code creates 20 "foreground" threads, and then the controller is handed over to the CPU. The CPU schedules according to the specified algorithm and executes instructions in slices.

Thread method description

t.start(): Activate the thread,

t.getName(): Get the name of the thread

t.setName( ): Set the name of the thread

t.name: Get or set the name of the thread

t.is_alive(): Determine whether the thread is active

t.isAlive( ): Determine whether the thread is active

t.setDaemon() Set it as a background thread or foreground thread (default: False); set whether the thread is a daemon thread through a Boolean value, you must execute the start() method It can be used only after that. If it is a background thread, the background thread is also running during the execution of the main thread. After the main thread is executed, the background thread stops regardless of success or failure; if it is a foreground thread, the foreground thread is also running during the execution of the main thread. After the main thread finishes executing, the program stops after waiting for the foreground thread to finish executing too

t.isDaemon(): Determine whether it is a daemon thread

t.ident: Get the identifier of the thread. The thread identifier is a non-zero integer. This property is only valid after the start() method is called, otherwise it just returns None.

t.join(): Execute each thread one by one, and continue execution after completion. This method makes multi-threading meaningless

t.run(): The thread is blocked by the CPU Automatically execute the run method of the thread object after scheduling

More methods

start The thread is ready, waiting for CPU scheduling

setName Set the name for the thread

getName Get the thread name

setDaemon is set to background thread or foreground thread (default); if it is a background thread, during the execution of the main thread, the background thread is also in progress. After the main thread completes execution , the background thread will stop regardless of success or failure; if it is a foreground thread, during the execution of the main thread, the foreground thread is also in progress. After the main thread completes execution, the program stops after waiting for the foreground thread to complete execution too

join executes each thread one by one, and continues execution after completion. This method makes multi-threading meaningless

run The thread automatically executes the run method of the thread object after being scheduled by the CPU

Lock Thread lock (mutex lock Mutex)

Event

The above is all the content described in this article. This article mainly introduces the relevant knowledge of python threading module , I hope you can use the information to understand the above content. I hope what I have described in this article will be helpful to you and make it easier for you to learn python.

For more related knowledge, please visit the Python tutorial column on the php Chinese website.

The above is the detailed content of What can the python threading module do? (detailed examples). 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