程序是可执行的二进制文件。
进程是执行中的程序。
线程是主进程中的小进程。
进程有自己的地址空间、内存、数据线及其他辅助数据。可以派生新的进程,进程间数据独立,通过进程间通信的方式共享信息。
进程内共享同一片数据空间,线程包括开始,执行顺序,结束。可以被其他线程中断和临时挂起。在多线程编程前,只能同时运行一个线程。
解释器是否支持多线程(python3中为’ _thread ')
import thread
单线程
from time import sleep,ctime
def pri1():
print('start pri1 at ',ctime())
sleep(1)
print('__end pri1 at ',ctime())
def pri2():
print('start pri2 at ',ctime())
sleep(1)
print('__end pri2 at ',ctime())
pri1()
pri2()

threading模块比thread模块更先进,threading和thread的部分属性会冲突,thread不支持守护线程。
threading模块:https://blog.youkuaiyun.com/GrofChen/article/details/94660755
多线程
import threading
from time import sleep,ctime
def pri1():
print('start pri1 at %s'%ctime())
sleep(1)
print('__end pri1 at %s'%ctime())
def pri2():
print('start pri2 at %s'%ctime())
sleep(1)
print('__end pri2 at %s'%ctime())
p1=threading.Thread(target=pri1)
p2=threading.Thread(target=pri2)
p1.start()
p2.start()

本文详细解析了程序、进程和线程的概念及其区别,深入探讨了它们各自的特点和工作原理,包括地址空间、数据共享及多线程编程的支持,并提供了Python中使用threading模块进行多线程编程的实例。
1047

被折叠的 条评论
为什么被折叠?



