下面的代码,会使32核linux服务器志强e5的cpu使用率达到3200%,然后别的什么程序都跑不了。

如果windows,cpu使用率会达到100%。这是计算方式有点区别。

个人计算机,除非你是8路 i9 9900k并联的超级计算机 ,可以确定的是任何价格在5万人民币以下的电脑都会把鼠标键盘鼠标卡得动不了。

import multiprocessing

def f():
while 1:
pass if __name__ == '__main__':
for _ in range(32):
multiprocessing.Process(target=f).start() while 1然后里面什么都不做只写个pass,有的人说既然是pass,那么cpu肯定使用率很低,
这个意识有点差,代码一直在while1 和 pass这两行无限快速跳来跳去,是一直要耗费cpu的。 为了赌这个代码费不费cpu,还赢得了一个免费晚餐。 发结果截图: 这是windwos电脑,12核24线程的洋垃圾,cpu直接打满,鼠标卡得动弹不了。


linux的截图,这个是双路e5 2650,16和32线程。每个py进程都达到100%,直接使总cpu使用率达到3200%。
单个python进程最高只能使用100%的cpu使用率,单个java最高可以使用3200%的cpu使用率,所以py在cpu密集型计算后开多进程非常有必要。


打这个赌得到免费晚餐,兼职太容易。while 1: pass虽然啥都不做,但是解释器需要一直循环运行了 这两句,怎么可能不要cpu?
大家在设计代码时候要避免这样while 1无限死循环中运行代码,一定最少要sleep哪怕是0.00001 秒也会大大减少cpu使用率。

python while 1 然后pass会发生什么?的更多相关文章

  1. Python 为什么要有 pass 语句?

    本文出自"Python为什么"系列,请查看全部文章 关于 Python 中的pass语句,它似乎很简单(只有 4 个字母),即使是没有任何编程经验的初学者也能很快地掌握它的用法. ...

  2. python的continue和pass的区别

    a = 'pythyon' i = 2 for element in a: if element == 'y': pass i = 3 else: print(element+str(i)) 结果: ...

  3. Python pass 语句使用示例

    Python pass 语句的使用方法示例.Python pass是空语句,pass语句什么也不做,一般作为占位符或者创建占位程序,是为了保持程序结构的完整性,pass语句不会执行任何操作,比如: P ...

  4. Python 的 pass 语句

    Python pass是空语句,是为了保持程序结构的完整性. pass 不做任何事情,一般用做占位语句. 例子1: if __name__ == '__main__': pass 例子2: # 输出 ...

  5. Python pass 语句

    Python pass 语句 Python pass是空语句,是为了保持程序结构的完整性. pass 不做任何事情,一般用做占位语句. Python 语言 pass 语句语法格式如下: pass 实例 ...

  6. python中break、continue 、exit() 、pass终止循环的区别

    python中break.continue .exit() .pass区分 1.break:跳出循环,不再执行 Python break语句,就像在C语言中,打破了最小封闭for或while循环. b ...

  7. 小朋友学Python(3)

    运算符 一.基本运算符 Python运算符多数与C/C++/Java类似,但有少数不一样. “/”表示求商,“//”求商的整数部分.11 / 2 = 5.500000, 11 // 2 = 5 “** ...

  8. 【Python笔记】Python语言基础

    Python是一种解释性(没有编译).交互式.面向对象的语言 1.安装python编译器 版本:Python2.7比较普遍,Python不是向下兼容的软件,因此Python3.x有些东西不好找资料 2 ...

  9. python中的异常处理try/except/finally/raise

    异常发生在程序执行的过程中,如果python无法正常处理程序就会发生异常,导致整个程序终止执行,python中使用try/except语句可以捕获异常. try/except 异常的种类有很多,在不确 ...

随机推荐

  1. 浏览器从输入URL到渲染完页面的整个过程

    从输入URL到渲染出整个页面的过程包括三个部分: 1.DNS解析URL的过程 2.浏览器发送请求与服务器交互的过程 3.浏览器对接收到的html页面渲染的过程 一.DNS解析URL的过程 DNS解析的 ...

  2. ThinkCMF_X1.6.0-X2.2.3框架任意内容包含漏洞的简单分析复现(附自动化验证脚本)

    1.漏洞概述 攻击者可利用此漏洞构造恶意的url,向服务器写入任意内容的文件,达到远程代码执行的目的 2.影响版本 ThinkCMF X1.6.0 ThinkCMF X2.1.0 ThinkCMF X ...

  3. PAT甲级1015题解——令人迷茫的翻译

    题目分析: 本题计算过程简单,但翻译令我迷茫:题意读清楚很重要(反正我是懵逼了)对于一个10进制的数,如果它是一个素数,把它转换成d进制,再将这个序列逆序排,这个逆序的d进制数的10进制表示如果也是素 ...

  4. javascript学习3、数据类型、数据类型转换、运算符

    数据类型包括:基本数据类型和引用数据类型 基本数据类型指的是简单的数据段,引用数据类型指的是有多个值构成的对象. 当我们把变量赋值给一个变量时,解析器首先要确认的就是这个值是基本类型值还是引用类型值 ...

  5. Laravel5.4框架中视图共享数据的方法详解

    本文实例讲述了Laravel5.4框架中视图共享数据的方法.分享给大家供大家参考,具体如下: 每个人都会遇到这种情况:某些数据还在每个页面进行使用,比如用户信息,或者菜单数据,最基本的做法是在每个视图 ...

  6. The Best Open Source Game Engine: In Search Of Perfection

    https://www.greatsoftline.com/the-best-open-source-game-engine-in-search-of-perfection/ The game eng ...

  7. 24 Home Assistant

    Home Assistant https://github.com/home-assistant/home-assistant python3 -m pip install homeassistant ...

  8. UFUN函数 UF_CURVE函数(UF_CURVE_create_line、UF_CURVE_create_arc、UF_CURVE_ask_arc_data、UF_CURVE_ask_line_data)

    UF_initialize(); //CSYS_ask_wcs tag_t wcs_id=NULL_TAG; //CSYS_ask_csys_info ]={0.0}; //CURVE_create_ ...

  9. 一篇文章把你带入到JavaScript中的闭包与高级函数

    在JavaScript中,函数是一等公民.JavaScript是一门面向对象的编程语言,但是同时也有很多函数式编程的特性,如Lambda表达式,闭包,高阶函数等,函数式编程时一种编程范式. funct ...

  10. sysmain服务怎么启动 & Win7 SuperFetch无法启动

    在控制面板/管理工具/服务中,只需找到Superfetch这个服务,双击,然后将其启动类型改为自动,并点击启动按钮并确定即可. Superfetch无法启动,系统找不到指定档案 ms-windows ...