Python并发编程高级课程--线程的同步和通信
极客小将2020-09-29-
线程通信:之前的课程中我们学过进程之间的通信,线程之间的通信有所不同,线程之间的通信是通过全局对象来进行通信的。举例说明:进程中的所有线程共享进程的地址空间,可以定义一个全局变量,在各个不同进程中,根据全局变量的不同状态,来执行不同的进程,类似于条件选择语
线程通信:
之前的课程中我们学过进程之间的通信,线程之间的通信有所不同,线程之间的通信是通过全局对象来进行通信的。举例说明:进程中的所有线程共享进程的地址空间,可以定义一个全局变量,在各个不同进程中,根据全局变量的不同状态,来执行不同的进程,类似于条件选择语句。
线程同步:
线程同步与进程同步一样,引入同步机制是为对线程间的并发操作进行协调和制约。进程内的多个线程对共享资源进行并发读写时,必须进行同步,否则会出现数据不一致的情况。
举例说明线程同步的重要性:
进程内有一个全局变量,初始值1000,表示银行卡中的余额,进程中有两个线程不断进行消费,并更新全局变量的值。
同进程同步一样,线程也可以通过互斥锁,信号量来进行同步,此外还可以通过条件变量来进行同步。
- 上一篇
Python并发编程高级课程--线程
什么是线程?上节课中,我们降到了进程,知道了每创建一个进程,都需要系统分配CPU、内存、磁盘等资源。而系统中不止一个进程。在进程和进程之间切换的时候,系统需要记录之前进程的执行状态信息,以便下次执行时调用。由于在早期的电脑中,进程的创建、切换、销毁存在较大的
- 下一篇
Python并发编程高级课程--协程
什么是协程?所谓的协程,对应的是程序中的一部分处理逻辑,比如程序中的某一个函数。与函数的区别在于,协程仅表示一个处理过程,通常没有返回值。进程和线程的调度和切换由操作系统来进行控制,而协程的切换则由程序员进行控制。同学们在理解协程时,只需将它理解为一个函数