如果我不小心创建了一个无限循环,我的计算机会受到影响吗



这似乎是一个愚蠢的问题,但我还没有找到答案。我使用Sublime Text在Python中编写了一个循环,我不小心设置了导致运行无限循环的错误条件。

在多次尝试失败后,我注意到我的操作系统变慢了。我想知道运行循环是否会对RAM或处理产生负面影响,即使我强制退出应用程序——或者这可能是巧合。

别担心。含糊地说,无论你是否在运行应用程序代码,你电脑中的CPU总是在运行。只要计算机在运行,RAM芯片就会一直通电。实际上,DDR内存必须定期刷新才能工作(可以将其视为周期性的读写周期,尽管它们是由芯片本身执行的。所以,不,无限循环不会耗尽你的cpu或ram,但它可以阻止它们的某些部分进入低功耗模式,这取决于实际的硬件和操作系统。

在多次尝试失败后,我注意到我的操作系统变慢了。我想知道运行循环是否会对RAM或处理产生负面影响,即使我强制退出应用程序——或者这可能是巧合。

没有。除非应用程序留下了执行工件(例如其他碰巧也循环的僵尸进程),否则什么都不会发生(在进程的执行停止后,操作系统会回收它所拥有的所有资源)。

我想知道运行循环是否会对RAM或处理产生负面影响,即使我强制退出应用程序

就CPU而言,无限循环只是一组永不结束(有条件或无条件)的跳跃,后面可能有也可能没有其他有意义的指令。这是完全无害的。

据我所知,是的。您的RAM将开始用完。我也遇到过这种情况,有时我别无选择,只能强制退出应用程序。

Sublime Text的情况下,只需使用ctrl+break即可停止执行。它可能发生在您编写的某些代码中,而这些代码并没有立即明显地发生这种情况。然而,你可以很容易地检查RAM的使用情况,你会看到峰值

一旦执行循环的进程/线程被破坏,那么循环执行也将终止。

可能仍需要清理资源,这可能会对这些资源的管理方式产生"影响"。。。据我所知,python执行所有必要的清理,以防止内存泄漏等。

相关内容

最新更新