易语言自带的延时为什么占用cpu这么高

 我来答
237911096
推荐于2018-04-30 · TA获得超过3965个赞
知道大有可为答主
回答量:4159
采纳率:71%
帮助的人:744万
展开全部
延时这个命令是在等待延时的时间内 停止程序其他代码运行,延时的时间过后,再进行执行代码。' 通俗点理解就是打个比方: 当你正在走路时候,使用了延时() 那么这时候的你会停止一切其他动作,等延时过后 才可以继续走路或其他动作。
用在程序里会导致程序在延时时间内直接卡死,等延时时间过后才会自动恢复

而延迟这个命令是在等待的时间内 虽然停止当前继续往下执行下面的代码,但不影响程序中其他线程或代码的运行。' 打个比方:当你正在走路时候,遇见了延迟() 那么这时候 你虽然停留在原地 不继续走动,但这不影响你作其他动作,比如:在原地说话,原地观看,原地抽烟。当延迟时间过后,你就又可以继续往下走了。
用在程序里就是你虽然可以进行其他操作,程序不会卡死,但是你想要的代码会在延迟时间结束后才进行执行

你说的延时CPU占用高,那应该是延迟吧。。

延时是不会占用CPU资源的。他告诉系统“
我在多少时间内不需要执行代码了,你不要让我执行,倒了时间再唤醒我”。也就是让程序进入挂起状态。所以程序会假死(无响应)。。而延迟内部逻辑就是一个死循环,每次都检查时间有没有到设定时间,没到就继续循环...循环是完全无间隔的,利用循环来浪费时间,而不是告诉系统我暂时不用了,你不要让我执行,所以会完全占满1个cpu的全部工作量,比如你是四核的,任务管理器里一个延迟下去cpu占用率直接25% 。。这就是延迟会占用比较多CPU资源的原因
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式