肖sir ___性能测试____多线程
2024-09-08 19:00:58
一、理论
(一)
(1)多线程是Python程序中实现多任务的一种方式
(2)线程是程序执行的最小单位.
(3)同属一个进程的多个线程共享进程所拥有的全部资源.
(二)进程和线程对比
(1)关系对比:
a、线程依附在进程里面的,没有进程就没有线程。
b、一个进程默认提供一条线程,进程可以创建多个线程
(2)区别对比:
a、创建进程的资源开销要比创建线程的资源开销要大
b、进程是操作系统资源分配的基本单位,线程是cpu调度的基本单位
c、线程不能独立执行,必须依存在进程中
(3)优缺点对比
a、进程优缺点:
优点:可以用多核
缺点: 资源开销大
b、线程优缺点:
优点:资源开销晓
=================================
缺点:不能使用多核
二、实战·
1.导入线程模块
import threading
2.通过线程类创建线程对象
线程对象= threading.Thread(target=任务名)
3.启动线程执行任务
线程对象.start()
三、知识点:
(一)主线程会等待所有的子线程执行结束再结束,除非设置子线程守护主线程
设置守护主线程有两种方式:
1.threading.Thread(target=work, daemon=True)
2.线程对象.setDaemon(True)
(二)线程间执行顺序
1、线程之间执行是无序的
最新文章
- Python爬虫入门一之综述
- 【BZOJ-1367】sequence 可并堆+中位数
- MANIFEST.MF的用途(转载)
- ubuntu 无声音的解决
- C2第六次作业解题报告
- 0c-36-自动释放池应用场景
- swing画太极图案源码
- EJBCA 在windows上的安装
- 【deep learning学习笔记】最近读的几个ppt(四)
- usaco training 4.2.3 Job Processing 题解
- 第一个ExtJS练习(添加用户面板)
- Minimum Inversion Number~hdu 1394
- 一个简单的基于 DirectShow 的播放器 1(封装类)
- [Swift]LeetCode87. 扰乱字符串 | Scramble String
- Java课堂测试——一维数组
- 爱因斯坦求和约定 (Einstein summation convention)
- 《高性能JavaScript》--读书笔记
- 剑指Offer-- 之字形顺序打印二叉树
- Paper | 块分割信息 + 压缩视频质量增强
- uniGUI试用笔记(十)
热门文章
- [C++]什么是POD?
- 超详细版本vue+capacitor(自定义capacitor插件)编写移动端应用
- 内存概述-java虚拟机的内存划分
- Flutter入门资料推荐
- mysql 错误解决大法 Specified key was too long; max key length is 767 bytes
- 《Terraform 101 从入门到实践》 Terraform在公有云GCP上的应用
- JAVA虚拟机15---虚拟机的类加载机制
- ECharts 提示框组件Tooltip属性大全(包含文本注释)
- Hystrix断路器
- rt-thread模糊到清晰系列: timer.c