我希望能夠在每3天內停止我的應用程序。我只想安排一種方法,在沒有任何外部干預的情況下自動停止應用程序(如坐在我的桌面等)。如何在Openshift中停止應用程序
到目前爲止,我有這幾點:
Runtime.getRuntime().exec("rhc stop-app --app ApplicationName"); //This doesn't work. I have tried it
或者
System.exit(0) // I am told to not run this command on openshift server
或者
Runtime.getRuntime().exit(0) //I am afraid to run this command
或者
Runtime.getRuntime().halt(0) //I am afraid to run this command as well
我害怕使用這些命令中的一些命令,因爲我告訴他們不要在openshift服務器上運行它們,因爲它們實際上可能會停止整個虛擬機。這將停止在該虛擬機上託管的所有應用程序。這會讓我被禁止。我將被禁止。
編輯:這個問題不是如何停止一般的應用程序。這個問題是關於如何停止在OpenShift服務器上託管的Spring MVC wep應用程序。沒有那些答案不適用於這個環節。
您只需根據邏輯條件停止應用程序即可。 'while(validConditionToContinue()){yourProcessingHere(); }'。當條件不再適用時,程序將自然退出。這取決於您的應用程序觸發它如何退出該循環。 – ManoDestra
@ManoDestra我想要一個特定的命令來停止應用程序。該特定命令是Runtime.getRuntime()。exit(0)。謝謝 –
不好的做法。除非發生需要立即退出應用程序的絕對災難性事件,否則您不應該要求該命令。它不應該用於從應用程序正常退出。這可以用普通的邏輯來完成。除非你使用關閉掛鉤:http://stackoverflow.com/questions/3715967/when-should-we-call-system-exit-in-java。您目前的上述要求不符合該情況。您應該使用邏輯處理它,並且比使用運行時強制退出應用程序更優雅地退出應用程序。 – ManoDestra