cari
Rumahpembangunan bahagian belakangTutorial PythonPython线程下thread对象的用法介绍(附实例)

本篇文章给大家带来的内容是关于Python线程下thread对象的用法介绍(附实例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

Thread对象

Thread类用于表示单独的控制线程。

语法:

t=Thread(group=None,target=None,name=None,args=(),kwargs={})
创建一个新的Thread实例:t

group:为以后扩张保留的,默认为None

target:一个可调用对象,线程启动时,run()方法将调用此对象

name:线程名称,默认创建一个“Thread-N”格式的唯一名称。

args:传递给target函数的参数元祖

kwargs:传递给target的关机字参数的字典。

常用属性于方法

t.start():通过在一个单独的控制线程中调用run(),启动线程,此方法只能被调用一次。

t.run():线程启动时将调用此方法。默认情况下,他会调用目标函数target。还可以在Thread的子类中重新定义此方法。

t.join([timeout]):阻塞线程,等待直到线程终止或者出现超时为止。timeout是以秒为单位的超时时间。
线程启动之前不能调用此方法,否则会报错。

t.is_alive:如果线程是活动的,返回True,否则返回False,从start()返回的那一刻开始,线程就是活动的,
直到run()方法终止为止。

t.name:线程名称,这个字符串用于唯一标识,可以根据需要将它更改为更有意义的值,

t.ident:整数线程标识符,如果线程尚未启动,它的值为None。

t.daemon:如果线程是后台线程,该值为True,否则未False。当不存在任何任何活动的非后台进程时,整个程序会退出。

实例1:利用Thread对象,简单创建一个线程,并启动一个函数

代码:
#利用Thread对象,简单创建一个线程,并启动一个函数
from threading import Thread
import time
def mark(interval):
    print("循环等待时间时间%d,等待前时间:%s"%(interval,time.ctime()))
    time.sleep(interval)
    print("等待后的时间:%s"%time.ctime())

if __name__=="__main__":
    t=Thread(target=mark,args=(3,))
    t.daemon=False#设置为非后台线程,不然会看不到自线程打印效果主线程就直接关闭了
    #下面一句会报错,必须在start()方法之后调用
    #t.join(3)
    t.start()
    #下面语句也会报错,因为start只能调用一次
    #t.start()
    print("end")
结果:

3228456854-5b9539da06798_articlex.gif

实例2:通过继承Thread,实现线程类

代码:

#通过继承Thread,实现线程类
from threading import Thread
import time

class MyThread(Thread):
    def __init__(self,interval):
        #下面语句用来调用基类方法,必须调用
        Thread.__init__(self)
        self.daemon=False
        self.interval=interval
    def run(self):
        print("循环等待时间时间%d,等待前时间:%s" % (self.interval, time.ctime()))
        time.sleep(self.interval)
        print("等待后的时间:%s" % time.ctime())

if __name__=="__main__":
    t=MyThread(3)
    t.start()
    #为了方便查看打印效果,加了一秒延迟
    time.sleep(1)
    print("end")

结果:

414278123-5b9539e960927_articlex.gif

相关推荐:

python多线程之thread的详细介绍

python开发之thread线程基础实例入门

Atas ialah kandungan terperinci Python线程下thread对象的用法介绍(附实例). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Apakah jenis data yang boleh disimpan dalam array python?Apakah jenis data yang boleh disimpan dalam array python?Apr 27, 2025 am 12:11 AM

Pythonlistscanstoreanydatatype, arraymoduleArraysstoreonetype, andnumpyarraysarefornumumericalcomputations.1) listsareversatileButlessMememory-efficient.2) arraymoduleArduleArrayRaysarememory-efficientforhomogenhomogenhomogenhomogenhomogenhomogenhomogenhomogenhomogenhomogenhomogenhomogenhomogenhomogenhomogenhomogen

Apa yang berlaku jika anda cuba menyimpan nilai jenis data yang salah dalam array python?Apa yang berlaku jika anda cuba menyimpan nilai jenis data yang salah dalam array python?Apr 27, 2025 am 12:10 AM

KetikayyoUttemptToStoreAveFheWrongatatypeinapythonArray, anda akan menjadicounteratypeerror

Yang merupakan sebahagian daripada Perpustakaan Standard Python: Senarai atau Array?Yang merupakan sebahagian daripada Perpustakaan Standard Python: Senarai atau Array?Apr 27, 2025 am 12:03 AM

Pythonlistsarepartofthestandardlibrary, sementara

Apa yang perlu anda periksa jika skrip dijalankan dengan versi Python yang salah?Apa yang perlu anda periksa jika skrip dijalankan dengan versi Python yang salah?Apr 27, 2025 am 12:01 AM

Thescriptisrunningwiththewrongpythonversionduetoincorrectdefault interpretsettings

Apakah beberapa operasi biasa yang boleh dilakukan pada tatasusunan python?Apakah beberapa operasi biasa yang boleh dilakukan pada tatasusunan python?Apr 26, 2025 am 12:22 AM

PythonArraysSupportVariousoperations: 1) SlicingExtractsSubsets, 2) Menambah/ExtendingAddSelements, 3) InsertingPlaceSelementSatSatSatSpecifics, 4) RemovingDeleteselements, 5) Sorting/ReversingChangesOrder,

Dalam jenis aplikasi yang biasa digunakan oleh numpy?Dalam jenis aplikasi yang biasa digunakan oleh numpy?Apr 26, 2025 am 12:13 AM

NumpyarraysareessentialforapplicationRequiringeficientnumericalcomputationsanddatamanipulation.theyarecrucialindaSascience, machinelearning, fizik, kejuruteraan, danfinanceduetotheirabilitytOHandlelarge-Scaledataefisien.Forexample, infinancialanal

Bilakah anda memilih untuk menggunakan array di atas senarai di Python?Bilakah anda memilih untuk menggunakan array di atas senarai di Python?Apr 26, 2025 am 12:12 AM

UseanArray.arrayoveralistinpythonwhendealingwithhomogeneousdata, criticalcode prestasi, orinterfacingwithccode.1) homogeneousdata: arrayssavemememorywithtypedelements.2)

Adakah semua operasi senarai disokong oleh tatasusunan, dan sebaliknya? Mengapa atau mengapa tidak?Adakah semua operasi senarai disokong oleh tatasusunan, dan sebaliknya? Mengapa atau mengapa tidak?Apr 26, 2025 am 12:05 AM

Tidak, notalllistoperationsaresuportedByArrays, andviceversa.1) arraysdonotsupportdynamicoperationslikeappendorinsertwithoutresizing, whyimpactsperformance.2) listsdonotguaranteeconstantTimeComplexityFordirectacesscesscesscesscesscesscesscesscesscesessd.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

VSCode Windows 64-bit Muat Turun

VSCode Windows 64-bit Muat Turun

Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft

SublimeText3 Linux versi baharu

SublimeText3 Linux versi baharu

SublimeText3 Linux versi terkini

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

mPDF

mPDF

mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),