python(CPython)提供了_thread和threading两个线程模块,_thread是低级模块,threading对_thread进行了封装,提高了_thread原有功能的易用性以及扩展了新功能,通常我们只需要使用threading模块就可以了,这里我们也只对threading模块进行详细介绍。
2.1方法属性首先,我们来看一下threading模块的直接方法和属性。
threading.enumerate()
以列表形式返回当前所有存活的threading.Thread对象。
threading.active_count()
返回当前存活的threading.Thread对象,等于len(threading.enumerate())。
threading.current_thread()
返回当前对应调用者控制的threading.Thread对象,如果调用者的控制线程不是利用threading创建,则会返回一个功能受限的虚拟线程对象。
threading.get_ident()
返回当前线程的线程标识符,它是一个非零的整数,其值没有直接含义,它可能会在线程退出,新线程创建时被复用。
threading.main_thread()
返回主线程对象,一般情况下,主线程是Python解释器开始时创建的线程。
threading.stack_size([size])
返回创建线程时用的堆栈大小,可选参数size指定之后新建线程的堆栈大小,size值需要为0或者最小是32768(32KiB)的一个正整数,如不指定size,则默认为0。
threading.get_native_id()
返回内核分配给当前线程的原生集成线程ID,其值是一个非负整数。
threading.TIMEOUT_MAX
指定阻塞函数(如:Lock.acquire(),Condition.wait()...)中形参timeout允许的最大值,传入超过这个值的timeout会抛出OverflowError异常。
以上内容为大家介绍了Python的threading模块,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。