C++ 可执行文件在无限情况下运行的时间(任何时间限制)

C++ 可执行文件在无限情况下运行的时间(任何时间限制),c++,c,executable,exe,C++,C,Executable,Exe,一点疑问 我有一个应用程序(exe)在无限循环中运行,它执行的时间。。我的意思是,如果我的系统开启,它会执行数年吗。或者应用程序运行有任何时间限制 (如果这个问题的位置不正确,请给我指出正确的参考)它将一直执行,直到您重新启动或以其他方式终止进程 如果它真的是一个无限循环,你会很恼火地很快杀死它,因为其他应用程序会在机箱中遭受CPU不足的折磨。如果您是多核的,它不会破坏交易,但看到所有其他进程都慢下来,它仍然是一个刺激因素。它将执行,直到您重新启动或以其他方式终止进程 如果它真的是一个无限循环,

一点疑问 我有一个应用程序(exe)在无限循环中运行,它执行的时间。。我的意思是,如果我的系统开启,它会执行数年吗。或者应用程序运行有任何时间限制


(如果这个问题的位置不正确,请给我指出正确的参考)

它将一直执行,直到您重新启动或以其他方式终止进程


如果它真的是一个无限循环,你会很恼火地很快杀死它,因为其他应用程序会在机箱中遭受CPU不足的折磨。如果您是多核的,它不会破坏交易,但看到所有其他进程都慢下来,它仍然是一个刺激因素。

它将执行,直到您重新启动或以其他方式终止进程


如果它真的是一个无限循环,你会很恼火地很快杀死它,因为其他应用程序会在机箱中遭受CPU不足的折磨。如果你是多核的,就不是一个交易破坏者,但看到其他一切都慢下来,仍然是一个刺激因素。

一个永远不会结束的程序将在计算机能够运行的时间内运行

但是,如果您的程序可能导致堆栈溢出或其他崩溃

(指将永远运行的程序)

例如(关于崩溃程序,相当确定这将实际崩溃)


一个永远不会结束的程序将在计算机能够运行的时间内运行

但是,如果您的程序可能导致堆栈溢出或其他崩溃

(指将永远运行的程序)

例如(关于崩溃程序,相当确定这将实际崩溃)


如果应用程序在无限循环中运行,即

while(1)
{
  //...
}
如果遇到错误并且代码未正确处理,它将停止,否则它将无限期运行

如果存在与操作系统相关的终止进程的信号,它将终止。这可能是因为用户试图手动终止进程,也可能是因为系统内存普遍不足。这些类型的操作系统信号通常是您无法控制的。但是,您可以实现一种方法来检测进程是否已终止(可能是通过使用子进程),如果进程意外终止,该方法将重新启动/恢复进程


如果将进程添加到操作系统的启动脚本中,则即使发生电源故障或可能导致重新启动的其他类型的事件,也会覆盖您。

如果应用程序在无限循环中运行,即

while(1)
{
  //...
}
如果遇到错误并且代码未正确处理,它将停止,否则它将无限期运行

如果存在与操作系统相关的终止进程的信号,它将终止。这可能是因为用户试图手动终止进程,也可能是因为系统内存普遍不足。这些类型的操作系统信号通常是您无法控制的。但是,您可以实现一种方法来检测进程是否已终止(可能是通过使用子进程),如果进程意外终止,该方法将重新启动/恢复进程


如果将进程添加到操作系统的启动脚本中,则即使在发生电源故障或其他可能导致重新启动的事件时,您也会受到保护。

这将是一个永久程序。重新启动或系统挂起将终止进程,它将成为永久程序。重新启动或系统挂起都会终止进程,理论上它可以永远执行。但是大多数复杂的程序并不是完全节省内存的。它可能会在时间上消耗越来越多的内存,并可能达到进程内存限制


在x86 Windows系统上,通常是2GB,理论上可以永远执行。但是大多数复杂的程序并不是完全节省内存的。它可能会在时间上消耗越来越多的内存,并可能达到进程内存限制


在x86 Windows系统上,通常为2GB,只要提供了所有必需的资源,无限循环就会运行

一个无限循环将运行,只要它拥有所有必需的资源

如果我的系统开启,它会执行数年吗

这取决于操作系统。可以配置Unix系统(使用
ulimit-t
),以便在占用一定的CPU时间后自动终止进程

如果我的系统开启,它会执行数年吗


这取决于操作系统。可以配置Unix系统(使用
ulimit-t
),以便进程在消耗一定的CPU时间后自动终止。

简单的答案是,它可能不会像您预期的那样永远运行

您的操作系统(尤其是较旧版本的Windows)可能需要重新启动—例如:Windows 95和Windows 98(现已修补)中存在一个著名的错误,导致这些系统在正常运行49.7天后停止运行()。 我希望最新版本的Windows不会出现这种问题


它还取决于操作系统的调度程序。大多数情况下可能会运行高优先级任务。我听说过一些较旧的Unix系统,在这些系统中,低优先级的任务需要数年时间才能有机会运行。无论如何,我们不会在桌面操作系统中遇到如此极端的情况

简单的答案是,它可能不会像您预期的那样永远运行

您的操作系统(尤其是较旧版本的Windows)可能需要重新启动—例如:Windows 95和Windows 98(现已修补)中存在一个著名的错误,导致这些系统在正常运行49.7天后停止运行()。 我希望最新版本的Windows不会出现这种问题

它还取决于操作系统的调度程序。大多数情况下可能会运行高优先级任务。我听说过一些较旧的Unix系统,在这些系统中,低优先级的任务需要数年时间才能有机会运行。我们不会面对如此极端的情况
while(1)
{
  //...
}