java開發守護進程

來源:互聯網
上載者:User

其實就是想開發個Windows下系統服務一樣的程式。而查了好久資料,沒找到java如何開發linux的守護進程。用C語言開發感覺太麻煩了,何況還要嵌入業務。使用Servlet的話也行,但是需要額外安裝tomcat。

經過一天實驗,終於發現,原來這麼簡單!

先來段簡單代碼,每隔5秒更新job.log檔案。用來測試一下。

 

 

import java.io.BufferedWriter;import java.io.File;import java.io.FileWriter;import java.io.IOException;import java.util.Date;public class Program {/** * @param args */public static void main(String[] args) {File f = new File("/home/xieping/job.log");if (!f.exists()) {try {f.createNewFile();} catch (IOException e) {e.printStackTrace();}}while (true) {try {BufferedWriter output = new BufferedWriter(new FileWriter(f));output.write(new Date().toString());output.close();} catch (IOException e1) {e1.printStackTrace();}try {Thread.sleep(1000 * 5);} catch (InterruptedException e) {e.printStackTrace();}}}}
打包,我是用eclipse打包的,匯出個jar包就行了。
把檔案放到/home/xieping/目錄下。檔案名稱 job.jar。
開始設定為守護進程了!!
#java -jar job.jar &
簡單吧,就加一個&符號。可以查看下
#ps aux|grep job
看到了,果然啟動了。
#more /home/xieping/job.log
檔案的時間也一直換。
注意,在開多線程的情況下,進程可能無法終止。
#killall java  或者 #kill 進程ID 無效。需要強制終止。
#kill -9 進程ID。

 

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.