讓Java程序自動(dòng)重啟的實(shí)現(xiàn)方法代碼
設(shè)置自動(dòng)重啟的方法有很多,簡單的我們可以借助軟件實(shí)現(xiàn),高級(jí)一點(diǎn)的我們可以編寫程序?qū)崿F(xiàn),下面小編就為大家?guī)硪黄孞ava程序自動(dòng)重啟的實(shí)現(xiàn)方法(推薦)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
方法步驟
要讓一個(gè)java程序自動(dòng)重啟還真不容易的,重啟分兩步,首先是結(jié)束程序,這個(gè)簡單,只要運(yùn)行System.exit()就可以了。然后是啟動(dòng),這個(gè)就難了,這個(gè)時(shí)候程序都已經(jīng)結(jié)束了,就像一個(gè)人死了就不可能再自己站起來,怎么辦呢?讓別人幫他扶起來,幸運(yùn)的是,我也有這樣的條件,我要重啟的那個(gè)程序并不孤獨(dú),還有另一個(gè)java程序和它一起在運(yùn)行,我只要讓運(yùn)行著的那個(gè)程序來啟動(dòng)它就可以了。
但運(yùn)行著的那個(gè)程序它怎么知道要關(guān)閉的那個(gè)程序在什么時(shí)候關(guān)閉呢,如果不知道就不能貿(mào)然啟動(dòng)。只有讓要關(guān)閉的那個(gè)程序在自殺前先通知一下了,就是發(fā)個(gè)信息給運(yùn)行著的那個(gè)程序,告訴它,我要自殺了,你準(zhǔn)備重啟我吧。好了,這個(gè)也解決了,可以重啟了。
但第二個(gè)問題又來了,怎么啟動(dòng)呢,一般java程序都是用批處理來啟動(dòng)的,但在程序里像這樣調(diào)用批處理文件卻行不通:
try
{
Runtime.getRuntime().exec("要啟動(dòng)的批處理.bat");
}
catch(Exception e)
{
e.printStackTrace();
}
在java程序里只能調(diào)用可執(zhí)行程序來運(yùn)行,批處理是不能運(yùn)行的。怎么辦?沒辦法了嗎?找到一個(gè)軟件VisualBat,用它把批處理編譯成可執(zhí)行程序,這樣就可以了。
好了,現(xiàn)在可以關(guān)閉,也可以啟動(dòng)了,但還有一個(gè)問題:我要一天啟動(dòng)一次而且還要在下午5點(diǎn)時(shí)重啟,這個(gè)要考慮一下了,最后這樣做,用兩個(gè)變量,一個(gè)記下程序啟動(dòng)時(shí)的日期,一個(gè)記下當(dāng)前是幾點(diǎn),只要所記的日期不是今天而且現(xiàn)在又是5點(diǎn),就可以重啟了。
本以為完成了,但程序閃了一下就不見了。仔細(xì)想了一下,可能結(jié)束程序與啟動(dòng)程序間隔時(shí)間太短了,舊程序還沒有完全釋放端口,新程序就來搶端口了,由于新程序沒搶到端口,于是就自己關(guān)閉了。這個(gè)也簡單,只要在啟動(dòng)前先等一等,Thread.sleep(5000) ,等上5秒,讓端口完全釋放,這時(shí)再啟動(dòng)就可以了。確實(shí)如此,這個(gè)問題就這樣解決了。
補(bǔ)充:電腦總是自動(dòng)重啟怎么辦
1、右擊“我的電腦”,選擇“屬性”項(xiàng)。
2、在打開的系統(tǒng)屬性窗口中選擇“高級(jí)系統(tǒng)設(shè)置”項(xiàng)進(jìn)入。
3、在打開的“系統(tǒng)屬性”窗口中,切換至“高級(jí)”選擇卡,然后點(diǎn)擊“系統(tǒng)和故障恢復(fù) 設(shè)置”按鈕。
4、在打開的窗口中取消勾選“自動(dòng)重啟啟動(dòng)”項(xiàng)并按確認(rèn)即可。
5、當(dāng)電腦在使用的過程中產(chǎn)生藍(lán)屏?xí)r,我們就可以進(jìn)入“系統(tǒng)日志”管理器中查看產(chǎn)生系統(tǒng)失敗的根源啦。打開“運(yùn)行”對(duì)話框,輸入命令“eventvwr.msc”即可查看日志信息,從中定位系統(tǒng)產(chǎn)生失敗的原因。
6、當(dāng)然,我們也可以通過禁用某些開機(jī)項(xiàng)來嘗試修復(fù)系統(tǒng)。打開“運(yùn)行”對(duì)話框,輸入命令“msconfig”進(jìn)入“系統(tǒng)配置實(shí)用程序”界面,勾選“常規(guī)”選項(xiàng)卡下的“診斷啟動(dòng)”選項(xiàng)。
7、還有一種修復(fù)計(jì)算機(jī)藍(lán)屏或重啟故障的方法,就是在電腦啟動(dòng)時(shí)按“F8”進(jìn)入系統(tǒng)故障菜單,從中選擇“安全模式”進(jìn)入或“最后一次正確的配置”項(xiàng)進(jìn)入系統(tǒng),將及有可能修復(fù)系統(tǒng)。
8、當(dāng)然,如果以上方法均不能解決問題,那么建議您還是重新安裝一下系統(tǒng),畢竟安裝系統(tǒng)所耗費(fèi)的時(shí)間相對(duì)修復(fù)所用時(shí)間要少許多。一勞永逸之事才是王道。
相關(guān)閱讀:電腦自動(dòng)重啟方法
方法一:
1、打開控制面板-管理工具-計(jì)劃任務(wù)程序
2、創(chuàng)建基本任務(wù),名稱欄目,輸入“定時(shí)重啟”,下一步;
3、在窗口里,有每天、每周、每月、一次各種選擇,這里小誠選擇一次,這次執(zhí)行完就失效,您可以根據(jù)自己的情況進(jìn)行選擇哈,點(diǎn)擊下一步;
4、設(shè)置重啟的日期、時(shí)間點(diǎn),下一步;
5、選擇啟動(dòng)程序,下一步;
6、在打開頁面里,點(diǎn)擊瀏覽,找到C;\Windows\System32\Shutdown.exe,點(diǎn)擊打開;
7、在添加參數(shù)欄目里輸入“-r”(重啟),進(jìn)行下一步
8、點(diǎn)擊完成,即可實(shí)現(xiàn)自動(dòng)重啟了
方法二:
網(wǎng)上搜索個(gè)自動(dòng)重啟關(guān)機(jī)類軟件,這比較多,簡單設(shè)置一下就可以了。
程序自動(dòng)重啟的實(shí)現(xiàn)方法相關(guān)文章:
2.怎么樣讓電腦實(shí)現(xiàn)自動(dòng)重啟關(guān)機(jī)