首页 > 系统相关 >python中的多线程与多进程

python中的多线程与多进程

时间:2022-08-28 18:00:31浏览次数:50  
标签:共享内存 python 并发 线程 进程 共享 多线程

线程概念:

线程也叫轻量级进程,是操作系统能够进行运算调度的最小单位,它被包涵在进程之中,是进程中的实际运作单位。

线程自己不拥有系统资源,只拥有一点儿在运行中必不可少的资源,但它可与同属一个进程的其他线程共享进程所
拥有的全部资源。一个线程可以创建和撤销另一个线程,同一个进程中的多个线程之间可以并发执行

为什么要使用多线程

线程在程序中是独立的、并发的执行流。与分隔的进程相比,进程中线程之间的隔离程度要小,它们共享内存、文件句柄和其他进程应有的状态。

因为线程的划分尺度小于进程,使得多线程程序的并发性高。进程在执行过程之中拥有独立的内存单元,而多个线程共享
内存,从而极大的提升了程序的运行效率。
线程比进程具有更高的性能,这是由于同一个进程中的线程都有共性,多个线程共享一个进程的虚拟空间。线程的共享环境
包括进程代码段、进程的共有数据等,利用这些共享的数据,线程之间很容易实现通信。
操作系统在创建进程时,必须为改进程分配独立的内存空间,并分配大量的相关资源,但创建线程则简单得多。因此,使用多线程
来实现并发比使用多进程的性能高得要多。

代码实例:

 

 

 

标签:共享内存,python,并发,线程,进程,共享,多线程
From: https://www.cnblogs.com/99kol/p/16633267.html

相关文章

  • C++【多线程编程】之【初识线程】
    1.用c++11的thread库还是用pthread库?至于选择哪种多线程编程方案,需要根据你的实际项目、运行平台、团队协作等因素来考虑。一般而言,如果使用的是Linux操作系统,那么可以......
  • python中的浅拷贝与深拷贝
    1.python中的数据类型分为两种:不可变数据类型:数值number,字符串String,元组tuple可变数据类型:字典dic,列表list,集合set2.定义深拷贝:拷贝的程度深,开辟了一块新......
  • 3,python3 windows 安装,及 windows python 环境 requests模块安装
    1,安装python环境1,执行安装包,双击->python-3.10.4-amd64.exe->勾选选自定义安装和勾选添加环境变量  2,勾选安装所有用户和设置安装路径  3,cmd->python,验证Py......
  • 检查一个容器的进程绑核情况
    目录获取容器id获取容器id#!/usr/bin/envbashnow=$(date+%s)dockerids=$(dockerps|grepxx-pod|grepyy-container|awk'{print$1}')foritemin${dock......
  • Python Selenium使用cookie实现自动登录微博
    @目录前言一、预登陆获取cookie1)cookie处理2)预登陆二、登录测试前言模拟登录微博是实现微博网页爬虫的第一步,现在的微博网页版有个sinavisitsystem,只有登录过后才......
  • [转]Python PEP8 代码规范常见问题及解决方法
    转自:https://blog.csdn.net/qq_36759224/article/details/89304878 Python的PEP8代码规范,将常见的PEP8代码规范问题和解决方法记录一下,学习一下,养成良好......
  • 进程、线程补充与协程相关介绍
    补充点1.死锁当你知道锁的使用抢锁必须要释放锁,其实你在操作锁的时候也极其容易产生死锁现象(整个程序卡死阻塞)fromthreadingimportThread,Lockimporttimemu......
  • 记录一次网站上传的python代替方法
    网址:https://tool2-mml.sjtu.edu.cn/VRprofile/VRprofile.php这个网站需要上传文件 思路抓包看下网络请求开始看的时候发现没啥然后用wireshark看了下发现文件上传......
  • 6.8 python基础列表元素的添加操作
     #append()list=[10,20,30,40,50,60,70,80]#列表后面添加元素,可以施单个元素或列表整体list.append(20)#后面添加单个元素print(list)list.append([30,90])#后面......
  • 端口占用解决(Window系统)——结束占用端口的进程
    1.打开dos窗口。2.查看端口的占用情况。输入 netstat-ano查看所有端口的占用情况。记住PID(进程号)。 如果觉得太长了,也可以依据端口号输入 netstat-aon|findstr"......