Infinite loop 所有无限循环都是坏的吗?
出于好奇,所有的无限循环都是坏的吗Infinite loop 所有无限循环都是坏的吗?,infinite-loop,Infinite Loop,出于好奇,所有的无限循环都是坏的吗 如果运行一个无限循环,会产生什么不良影响和后果 此外,如果它们并非都是坏的,你能举一些例子说明它们什么时候能起到有意义的作用吗 他们是否需要一些东西来关闭实例?例如,我们总是在Java中使用StreamReader后关闭它(不知道为什么) 我不知道你说的“坏”是什么意思 无限循环在许多场景中很常见,主要是事件处理程序循环,其中程序位于无限循环中,等待某个外部事件发生,该事件被处理并返回等待。这就是GUI和许多服务器的编程方式 更新 它们非常有用,可以证明构造
- 如果运行一个无限循环,会产生什么不良影响和后果李>
- 此外,如果它们并非都是坏的,你能举一些例子说明它们什么时候能起到有意义的作用吗李>
- 他们是否需要一些东西来关闭实例?例如,我们总是在Java中使用StreamReader后关闭它(不知道为什么)
- 如果您正确编写程序,就不会因为循环而产生任何副作用
- 在微控制器上,无止境的循环用于永远不会到达程序的末尾。在微控制器程序的末尾,大多数时候没有操作系统可以接管。然后到达状态,此时不存在定义的行为,程序可以执行任何操作
- 倾听请求
- 获取请求,为该请求生成线程
- 冲洗并重复
- 程序将永远不会终止,除非您手动终止它(根据情况,也是肯定的)
- 不,您不需要,正如前面提到的,您可以手动终止它,但您可以实现一个输入命令行来接受终止命令,以优雅地结束
- 我不知道你说的“坏”是什么意思
无限循环在许多场景中很常见,主要是事件处理程序循环,其中程序位于无限循环中,等待某个外部事件发生,该事件被处理并返回等待。这就是GUI和许多服务器的编程方式
更新
它们非常有用,可以证明构造只适用于中的无限循环。
- 以一个简单的服务器为例,侦听连接
因此,伪无限循环对于您不想终止的进程非常有用,除非受到某些“外部”影响。不,它们还不错,实际上很有用
这取决于是否在无限循环进行时留下了占用内存的部分代码。无限循环几乎应用于所有领域:视频游戏、网络、机器学习等。因为无限循环通常用于获取即时用户输入/事件。在实时程序中,无限循环是正常的。看一看ArduinoIDE——仅有的两个函数是setup()和loop()。假设loop()永远不会退出,除非电源断开。我有几篇文章谈到当计算机内存在无限循环中时会过载。为什么GUI和服务器没有过载内存?我不知道这些文章所说的过载是什么意思。只有一个sleep语句的无限循环不会影响计算机的内存。当无限循环中存在内存泄漏时,可能会发生内存过载。如果可以从外部终止它,它是无限循环吗?;)编程中没有什么是无限的,我的朋友;)您描述的循环可能没有那么明显的结束条件,但它们不是无限的。术语“无限”是指要求机器无限期运行的程序吗?不,我的意思是,例如,事件处理循环将在某些事件(如关闭最后一个窗口或“退出”)时终止选择菜单项,这样即使是路由器等独立设备也有循环结束的条件(如通过ssh接收到的“关机”命令)。真正的无限循环非常少见。事实上,循环函数存在。。。但是它被一次又一次的呼唤,直到永远。。i、 主要函数基本上类似于:void main(){setup();while(1)loop();}