当前位置: 首页 > news >正文

进程/线程

进程是资源单位, 线程是执行单位。

每一个进程至少要有一个线程,启动每一个程序默认都会有一个主线程

1.多线程的两种实现

from threading import Thread#方法一
def func(name):for i in range(10):print(name, i)if __name__ == '__main__':t = Thread(target=func, args=("jerry",))      # 创建线程并给线程安排任务#参数必须是元组,且最后一个参数后面的逗号不能忘t.start()                   # 多线程状态为可以开始工作状态, 具体的执行时间由CPU决定for i in range(10):print("main", i)#方法二
class MyThread(Thread):              #创建一个类MyThread,继承父类Thread,#可以使用构造函数def __init__(self) 传递参数def run(self):                   # 固定的    -> 当线程被执行的时候, 被执行的就是run()for i in range(1000):print("子线程", i)if __name__ == '__main__':t = MyThread()# t.run()                      # 不能用t.run(), 调用了类中的run()方法,为单线程t.start()                      # 开启线程for i in range(1000):print("主线程", i)

 2.多进程的两种实现

与多线程的实现方法基本一样 

from multiprocessing import Processdef func():for i in range(1000):print("子进程", i)if __name__ == '__main__':p = Process(target=func)p.start()for i in range(1000):print("主进程", i)

 3.进程池,线程池

# 线程池: 一次性开辟一些线程. 我们用户直接给线程池子提交任务. 线程任务的调度交给线程池来完成
from concurrent.futures import ThreadPoolExecutor, ProcessPoolExecutordef fn(name):for i in range(1000):print(name, i)if __name__ == '__main__':# 创建50个线程池with ThreadPoolExecutor(50) as t:for i in range(100):t.submit(fn, name=f"线程{i}")# 等待线程池中的任务全部执行完毕. 才继续执行(守护)print("123")

相关文章:

进程/线程

进程是资源单位, 线程是执行单位。 每一个进程至少要有一个线程,启动每一个程序默认都会有一个主线程 1.多线程的两种实现 from threading import Thread#方法一 def func(name):for i in range(10):print(name, i)if __name__ __main__:t Thread(targetfunc, …...

Python 应用 之 转换音频格式

目录 一、python音频转换 1、pydub 音频包安装 2、 ffmpeg安装 1)、解压后,添加到环境变量中 2)、可以直接放在python安装目录下 3、python程序 1)、引入相关包 2)、重命名 3)、to Mp3 4&#xf…...

Oracle JDK 和OpenJDK两者有什么异同点

Oracle JDK 和 OpenJDK 是两种不同版本的 Java Development Kit(Java 开发工具包),它们都提供了用于开发 Java 程序的一系列工具和库。以下是它们之间的一些主要异同点: 相同点: 功能:在大多数情况下&…...

GPT引发智能AI时代潮流

最近GPT概念爆火,许多行业开始竞相发展AI ,工作就业也将面临跳转,目前测试就业形势就分为了两大类,一类是测试行业如功能、性能、自动化综合性人才就业技能需求,另一类便是AI测试行业的需求普遍增长,原本由…...

FreeSWITCH mrcp-v2小记

最近得知有人受mrcp的困扰,于是写了这篇小文,希望能有所帮助 FreeSWITCH版本选择 目前当然选择1.10.10,不建议老版本,差别在于老版本用到的libmrcp比较旧,是1.2版本,bug比较多,有时会crash&am…...

如何将你的PC电脑数据迁移到Mac电脑?使用“迁移助理”从 PC 传输到 Mac的具体操作教程

有的小伙伴因为某一项工作或者其它原因由Windows电脑换成了Mac电脑,但是数据和文件都在原先的Windows电脑上,不知道怎么传输。接下来小编就为大家介绍使用“迁移助理”将你的通讯录、日历、电子邮件帐户等内容从 Windows PC 传输到 Mac 上的相应位置。 在…...

Elasticsearch集群搭建、数据分片以及位置坐标实现附近的人搜索

集群搭建、数据分片 es使用两种不同的方式来发现对方: 广播单播也可以同时使用两者,但默认的广播,单播需要已知节点列表来完成 一 广播方式 当es实例启动的时候,它发送了广播的ping请求到地址224.2.2.4:54328。而其他的es实例使用同样的集群名称响应了这个请求。 一般这…...

深度学习_3 数据操作之线代,微分

线代基础 标量 只有一个元素的张量。可以通过 x torch.tensor(3.0) 方式创建。 向量 由多个标量组成的列表(一维张量)。比如 x torch.arange(4) 就是创建了一个1*4的向量。可以通过下标获取特定元素(x[3]),可以通…...

树莓派安装Ubuntu22.04LTS桌面版

工具:树莓派4B Raspberry Pi 自己下载的ubuntu22.04LTS img磁盘镜像文件 这里有一个小技巧:这个Raspberry Pi的选择镜像的时候在最后面一行可以选择自定义的镜像,哈哈哈哈,这就使得我们可以自己下载,而且知道那个文…...

Rust编程基础之函数和表达式

1.Rust函数 在之前的文章中,我们已经见到了一个函数:main函数, 它是很多程序的入口点。也见过 fn 关键字,它用来声明新函数。 Rust 代码中的函数和变量名使用 snake case 规范风格。在 snake case 中,所有字母都是小写并使用下划线分隔单词。这是一个包…...

关于preempt count的疑问

Linux中的preempt_count - 知乎 https://www.cnblogs.com/hellokitty2/p/15652312.html LWN:关于preempt_count()的四个小讨论!-CSDN博客 主要是参考这些文章 之前一直认为只要是in_interrupt()返回非0值,那么就可以认为当前在中断上下文。即…...

Windows 开启 Kerberos 的火狐 Firefox 浏览器访问yarn、hdfs

背景:类型为IPA或者MIT KDC,windows目前只支持 firefoxMIT Kerberos客户端的形式,其他windows端浏览器IE、chrome、edge,没有办法去调用MIT Kerberos Windows客户端的GSSAPI验证方式,所以均无法使用 Windows 开启 Kerb…...

华为云资源搭建过程

网络搭建 EIP: 弹性EIP,支持IPv4和IPv6。 弹性公网IP(Elastic IP)提供独立的公网IP资源,包括公网IP地址与公网出口带宽服务。可以与弹性云服务器、裸金属服务器、虚拟IP、弹性负载均衡、NAT网关等资源灵活地绑定及解绑…...

突破防火墙的一种方法

当Linux防火墙阻止来自某个ip的数据时,它应该是根据ip数据报里“源IP地址”字段取得的对方ip吧,那对方就不能通过篡改“源IP地址”来绕过防火墙吗?NAT模式下的路由器就修改了这个字段。 但这样的话,攻击者是收不到服务器返回的数…...

Docker 多阶段构建的原理及构建过程展示

Docker多阶段构建是一个优秀的技术,可以显著减少 Docker 镜像的大小,从而加快镜像的构建速度,并减少镜像的传输时间和存储空间。本文将详细介绍 Docker 多阶段构建的原理、用途以及示例。 Docker 多阶段构建的原理 在传统的 Docker 镜像构建…...

【开题报告】基于Spring Boot的家装产品展示交易平台的设计与实现

1.研究背景和目的 随着人们对居住环境舒适度和个性化需求的不断提升,家装市场正逐渐发展成为一个重要的消费领域。为了满足消费者对家装产品的需求,建立一个高效、可靠的家装产品展示交易平台变得尤为重要。本项目旨在通过使用Spring Boot框架&#xff…...

MacOS安装git

文章目录 通过Xcode Command Lines Tool安装(推荐)终端直接运行git命令根据流程安装先安装Command Lines Tool后再安装git 官网下载二进制文件进行安装官方国外源下载二进制文件(不推荐)国内镜像下载二进制文件(推荐)安装git 通过Xcode Command Lines Tool安装(推荐) 简单来讲C…...

京东协议算法最新版

环境准备 1 com.jingdong.app.mall11.6.4 入口定位 逆向分析,发现 params 里面有一个 sign 以及请求头里面有一个 jdgs 首先我们发现京东的 sign 是 32 位的,猜测其可能是 md5 之类的 hash 算法,既然是 hash 算法,那么就大概率…...

软考系统架构设计师案例分析知识汇总

软件架构风格 △△△ 软件架构风格是描述某一类特定应用领域中软件系统组织方式和惯用方式。组织方式描述了系统的组成构件和这些构件的组织方式,惯用模式则反映众多系统共有的结构和语义。 面向对象架构风格的特征是将数据表示和基本操作封装在对象中。这种模式的构件是对象…...

MyBatis-plus 代码生成器

具体代码 application.yaml server:port: 8081 #自定义端口号spring:datasource:url: jdbc:mysql://localhost:3306/itcast?useUnicodetrue&characterEncodingutf-8&serverTimezoneGMT%2B8username: rootpassword: 123456driver-class-name: com.mysql.cj.jdbc.Driver…...

Google Project Zero披露Pixel 10零点击漏洞利用链,仅两漏洞实现完整攻击路径

近日,Google Project Zero团队披露针对Pixel 10的零点击(0 - click)漏洞利用链,仅用两个漏洞就实现了从零点击上下文到Android root的完整攻击路径。研究背景此前Project Zero曾发布针对Pixel 9的漏洞利用链,因其中Dol…...

OpenClaw:本地AI协作者,让大模型真正动手执行

1. 项目概述:当AI不再“请指示”,而是直接“已执行”你有没有过这种体验:深夜改完最后一行代码,顺手让AI助手帮忙检查下Git提交记录里有没有漏掉敏感信息——结果它只回你一句“建议使用git log -p查看”,然后就安静了…...

2026论文写作工具红黑榜:一键生成论文工具怎么选?一篇讲透:

2026年论文写作工具红黑榜出炉,红榜优先选千笔AI、ThouPen、豆包,适配国内学术规范;黑榜避开低质免费工具、无真实引用平台、过度依赖全文生成的工具。选择时建议按需求匹配三维模型:需求匹配度 - 数据可信度 - 成本承受力。一、红…...

5分钟快速获取微信数据库密钥:Sharp-dumpkey完整使用指南

5分钟快速获取微信数据库密钥:Sharp-dumpkey完整使用指南 【免费下载链接】Sharp-dumpkey 基于C#实现的获取微信数据库密钥的小工具 项目地址: https://gitcode.com/gh_mirrors/sh/Sharp-dumpkey 你是否曾因为无法访问自己的微信聊天记录而感到困扰&#xff…...

抖音资源下载新体验:douyin-downloader一站式解决方案

抖音资源下载新体验:douyin-downloader一站式解决方案 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback suppo…...

零基础掌握罗技鼠标宏:让你的PUBG压枪更稳定

零基础掌握罗技鼠标宏:让你的PUBG压枪更稳定 【免费下载链接】logitech-pubg PUBG no recoil script for Logitech gaming mouse / 绝地求生 罗技 鼠标宏 项目地址: https://gitcode.com/gh_mirrors/lo/logitech-pubg 还在为《绝地求生》中难以控制的武器后坐…...

2026制造业数字化转型:Agent委外加工成本智能核算功能详解与应用

站在2026年这个智能体(Agent)全面爆发的时间节点回望,企业数字化转型已从早期的“数据上云”演进到了“决策自动化”的深度应用阶段。根据IDC与Gartner联合发布的《2026年全球智能体产业发展白皮书》,具备深度业务逻辑处理能力的智…...

免费文档下载终极指南:一键获取百度文库、豆丁网等30+平台资源

免费文档下载终极指南:一键获取百度文库、豆丁网等30平台资源 【免费下载链接】kill-doc 看到经常有小伙伴们需要下载一些免费文档,但是相关网站浏览体验不好各种广告,各种登录验证,需要很多步骤才能下载文档,该脚本就…...

OBS-VST插件完整指南:5分钟让直播音频秒变专业的终极方案

OBS-VST插件完整指南:5分钟让直播音频秒变专业的终极方案 【免费下载链接】obs-vst Use VST plugins in OBS 项目地址: https://gitcode.com/gh_mirrors/ob/obs-vst 想在OBS Studio中免费获得专业级音频处理效果吗?OBS-VST插件正是你需要的解决方…...

告别单片机C语言:用FlexLua和CH9329模块5分钟自制USB自动化小工具

零代码革命:用FlexLuaCH9329打造办公自动化神器 每天重复点击鼠标、敲击键盘的枯燥操作是否让你疲惫不堪?想象一下,早晨电脑自动打卡、会议自动记录、邮件自动回复——这些看似需要专业编程知识的自动化操作,现在只需5分钟就能实现…...