是否有可能使用C编写的程序停止然后在 x 秒之后重新启动自己在Windows中?如果是的话,如何实现呢?
答案 0 :(得分:2)
您可以通过让程序启动第二个程序来实现这一目标,该程序的唯一功能是等待一段时间,然后再次启动第一个程序。在伪代码中,想法是:
Program A:
Do whatever the program is supposed to do
Launch program B
exit.
Program B:
Wait predetermined time
Launch program A
exit.
我希望这能充分回答你的问题。
答案 1 :(得分:0)
我这样做的方式是使用命令行选项' startDelay = xx'。
如果没有这样的命令,我的应用程序就会正常启动。如果有,那么它的第一个动作,在尝试打开任何文件之前,DB,构建GUI,启动线程,启动服务器等就是为了睡觉而使用xx'秒。
如果我的应用需要重新启动,它会复制自己的命令行,添加' startDelay = xx'然后启动它自己的新副本,然后立即睡觉。在新副本启动大部分启动之前,原始版本有足够的时间正常关闭。
不需要任何其他应用程序或Windows调度程序和/或cron废话:)