python学习笔记——多线程(MT)

本文介绍了进程与线程的概念,重点讲解了Python中的多线程,包括全局解释器锁(GIL)、thread与threading模块的区别。强调了threading模块的高级特性与安全性,并探讨了join()方法在多线程中的作用。
摘要由CSDN通过智能技术生成
  1. 进程(process):重量级进程,执行中的程序,每个进程拥有自己独立的地址空间,内存,数据栈;
  2. 线程(thread):轻量级进程,进程中所包含的一个或多个执行单元称为线程(thread),一个线程包含以下内容。
    一个指向当前被执行指令的指令指针;
    一个栈;
    一个寄存器值的集合,定义了一部分描述正在执行线程的处理器状态的值;
    一个私有的数据区。
    yielding 让步,线程可以被抢占(中断)和临时挂起(睡眠)。
    如果两个或多个线程访问同一片数据,由于数据访问顺序不同,可能导致结果不同,竟态(race condition)
  3. 全局解释器锁:全局解释器锁(Global Interpreter Lock)是计算机程序设计语言解释器用于同步线程的工具,使得任何时刻仅有一个线程在执行。常见例子有CPython(JPython不使用GIL)与Ruby MRI。
  4. python多线程
    thread 和 threading的区别: Python提供了几个用于多线程编程的模块,包括thread、threading和Queue等。
    (1) thread模块: 允许程序员创建和管理线程,它提供了基本的线程和锁的支持。
    (2) threading模块: 允许程序员创建和管理线程,它提供了更高级别,更强的线程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值