pinews 最近的时间轴更新
pinews

pinews

V2EX 第 256313 号会员,加入于 2017-09-25 17:38:05 +08:00
正常的 while true 为什么不加 sleep 也不会耗尽 cpu?
程序员  •  pinews  •  2021-01-21 12:11:19 PM  •  最后回复来自 ben1024
16
再问 while true,底层是怎么做的?
问与答  •  pinews  •  2021-01-13 15:36:18 PM
windows10 最新版 wsl2 无法用 docker,取消 wsl2 反而能用
Docker  •  pinews  •  2021-09-13 10:52:39 AM  •  最后回复来自 circleee
1
光大信用卡也太不靠谱了,怎么办?
问与答  •  pinews  •  2020-11-24 11:21:42 AM  •  最后回复来自 pinews
12
pinews 最近回复了
@Swimming 我不懂,重开单子,算是冲红的吧。

我的意思是,假如出售一件商品,原价 1000 ,打折 900,0.9 的折扣,当天退款一件商品原价 850 ,售价 850 ,退款行为是否也有个折扣,这个折扣是不是 1 ,如果合计两项,是不是 1000-850=150,900-850=50 ,合计 50/150=0.33 的折扣,我感觉不对,又不知道哪里有问题。。
2021-01-21 10:36:57 +08:00
回复了 pinews 创建的主题 程序员 正常的 while true 为什么不加 sleep 也不会耗尽 cpu?
@ben1024 阻塞就是超时等待吧?

我借之前一个网友去快递点取快递的例子总结下。

第一个是,去了发现没有就回来,然后马上再接着去(很累很蠢,因为本来是预计已经到了,只取一次的)
第二个是,去了发现没有就回来,过一会( sleep )再去(不累了,但是会不及时)
第三个是,去了返现没有,就在那里等,如果在这个时间里没等到就回来,然后接着去,但是很有可能等到,或者干脆等不到就不回来,直到等到才回去(不累也很及时,但是要快点递支持在里面等)

例子不是很恰当,大概是这个意思吧,那个 iowait 应该是第三种吧,所以 while true 没 sleep 能又快又轻松完成任务。
2021-01-19 11:28:12 +08:00
回复了 pinews 创建的主题 程序员 正常的 while true 为什么不加 sleep 也不会耗尽 cpu?
@wangxn 如果 while(true){};那是不是他把所有时间片都占用了,所以会 100%
@julyclyde iowait 是啥?大概了解了一下,如果 cpu 虽然不用干活,但是也不能干别的,那有什么区别?
@systemcall 程序是怎么调用中断的?比如消息队列,我到 github 上搜源代码,看不懂,也没找到什么想要了解的信息
2021-01-19 11:02:56 +08:00
回复了 pinews 创建的主题 程序员 正常的 while true 为什么不加 sleep 也不会耗尽 cpu?
我说正常的 while true 是正常使用的。比如 kafka 的 php 示例就是 while true 我看 cpu 也没什么变化,如果跑满 4 核不是要占到 25 33 ?
2021-01-14 10:02:08 +08:00
回复了 zooo 创建的主题 问与答 空气中有很大的疑似汽油味...
不是有可燃气体检测仪器?放在家里,如果天然气泄漏会发警报,不知道物业怎么检测的?
我也会遇到,大约就是卡死了,特别是国外的数据库,特别容易卡死,还有一点,编辑连接->高级->保持连接间隔(秒),默认 240,可以试着改小,比如 30 。
哦 感谢大神们
2021-01-08 16:16:51 +08:00
回复了 jtping 创建的主题 程序员 购物车结算问题
@jtping 如果所有商品减库存都是相同的,比如-1,的确可以一起 update,明白了

那就考虑缓存数据库呗,期待你的结果。
对了 php 有个 ignore_user_abort,可以让浏长时间执行的程序在浏览器停止关闭之后继续执行。
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5597 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 21ms · UTC 05:50 · PVG 13:50 · LAX 22:50 · JFK 01:50
Developed with CodeLauncher
♥ Do have faith in what you're doing.