线程
线程
线程是cpu分配资源的基本单位(注意:进程是操作系统分配资源的基本单位),当一程序开始运行,这个程序就变成了一个进程,而一个进程相当于一个或者多个线程。当没有多线程编程时,一个进程相当于一个主线程;当有多线程编程时,一个进程包含多个线程(包括主线程),使用线程可以实现程序大的开发。
多个线程可以在同一个程序中运行,并且每一个线程完成不同的任务。多线程实现后台服务程序可以同时处理多个任务,并不发生阻塞现象。多线程的程序设计特点就是能够提高程序执行效率和处理速度。
线程代码示例
其实用法与多进程类似
#!/usr/bin/env python
import threading
def hello(name):
#获取线程id,线程id数一般比较大
print('当前为子线程,id:{}'.format(threading.get_ident()))
print('hello ' + name)
#main函数运行在主进程中
def main():
print('当前是主线程,id:{}'.format(threading.get_ident()))
print('---------------------')
t = threading.Thread(target=hello,args=('world',))
t.start()
t.join()
print('----------------------')
print('当前是主线程,id:{}'.format(threading.get_ident()))
if __name__ == '__main__':
main()
运行结果
┌──(root㉿kali)-[~/python_code/python_4]
└─# python multi_thread.py
当前是主线程,id:139658274930816
---------------------
当前为子线程,id:139658266674880
hello world
----------------------
当前是主线程,id:139658274930816
浙公网安备 33010602011771号