`
sealbird
  • 浏览: 571670 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

java开发守护进程

    博客分类:
  • JAVA
阅读更多
其实就是想开发个Windows下系统服务一样的程序。而查了好久资料,没找到java如何开发linux的守护进程。用C语言开发感觉太麻烦了,何况还要嵌入业务。使用Servlet的话也行,但是需要额外安装tomcat。

经过一天实验,终于发现,原来这么简单!

先来段简单代码,每隔5秒更新job.log文件。用来测试一下。





view sourceprint?
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();  

            }  

        }  

    }  

} 

view sourceprint?
打包,我是用eclipse打包的,导出个jar包就行了。
view sourceprint?
把文件放到/home/xieping/目录下。文件名 job.jar。
view sourceprint?
开始设置为守护进程了!!
view sourceprint?
#java -jar job.jar &
view sourceprint?
简单吧,就加一个&符号。可以查看下
view sourceprint?
#ps aux|grep job
view sourceprint?
看到了,果然启动了。
view sourceprint?
#more /home/xieping/job.log
view sourceprint?
文件的时间也一直换。
view sourceprint?
<SPAN style="COLOR: #800000">注意,在开多线程的情况下,进程可能无法终止。</SPAN>
view sourceprint?
<SPAN style="COLOR: #800000">#killall java  或者 #kill 进程ID 无效。需要强制终止。</SPAN>
view sourceprint?
<SPAN style="COLOR: #800000">#kill -9 进程ID。</SPAN>
分享到:
评论

相关推荐

    windows守护进程,开机自动重启,进程监测

    因为控制台程序出现过因为连接第三方服务超时直接挂掉(此时负载少了一个节点)以及服务器出现意外重启问题(该服务器所有节点宕机),所以需要一个进程守护程序。 也找过 现场的脚本、python的程序、pm2守护方式,...

    Java实现Linux下服务器程序的双守护进程

     现在的服务器端程序很多都是基于Java开发,针对于Java开发的Socket程序,这样的服务器端上线后出现问题需要手动重启,万一大半夜的挂了,还是特别麻烦的。  大多数的解决方法是使用其他进程来守护服务器程序,...

    javacomplete:java完成守护进程

    Java 编程语言的自动完成守护进程 完成守护进程提供类似 ide 的功能。 发展还处于非常早期的阶段。 完成度肯定可以改进,并且在某些极端情况下可能不起作用。 尽管如此,我已经在使用完成进行开发,所以我认为它处于...

    java范例开发大全

    第1章 Java开发环境的搭建(教学视频:9分钟) 2 1.1 理解Java 2 1.2 搭建Java所需环境 3 1.2.1 下载JDK 3 1.2.2 安装JDK 4 1.2.3 配置环境 5 1.2.4 测试JDK配置是否成功 7 实例1 开发第一个Java程序 7 第2章 Java...

    Java范例开发大全 (源程序)

     第1章 Java开发环境的搭建(教学视频:9分钟) 2  1.1 理解Java 2  1.2 搭建Java所需环境 3  1.2.1 下载JDK 3  1.2.2 安装JDK 4  1.2.3 配置环境 5  1.2.4 测试JDK配置是否成功 7  实例1 开发第一个...

    Java范例开发大全(全书源程序)

    第1章 Java开发环境的搭建(教学视频:9分钟) 2 1.1 理解Java 2 1.2 搭建Java所需环境 3 1.2.1 下载JDK 3 1.2.2 安装JDK 4 1.2.3 配置环境 5 1.2.4 测试JDK配置是否成功 7 实例1 开发第一个Java程序 7 第2...

    一个纯PHP实现的多进程,定时任务管理工具,兼容部分crontab语法, 支持守护进程

    cronManager是一个纯PHP实现的定时任务管理工具,api简单清晰,采用的是多进程模型,进程通信采用的是消息队列,任务监控也提供了简单的命令,方便易用

    java范例开发大全(pdf&源码)

    第1章 Java开发环境的搭建(教学视频:9分钟) 2 1.1 理解Java 2 1.2 搭建Java所需环境 3 1.2.1 下载JDK 3 1.2.2 安装JDK 4 1.2.3 配置环境 5 1.2.4 测试JDK配置是否成功 7 实例1 开发第一个Java程序 7 第2章 Java...

    Android应用保活(双进程守护,JobService,JobScheduler,WorkManage).zip

    Android应用保活(双进程守护,JobService,JobScheduler,WorkManager,监听系统广播等) 软件开发设计:PHP、QT、应用软件开发、系统软件开发、移动应用开发、网站开发C++、Java、python、web、C#等语言的项目开发与...

    Java服务器端开发面试.doc

    NIO(通道,缓冲区,选择器) Java服务器端开发面试题篇2 thread, start(), run() 多线程里面的关键字,wait, notfiy, 锁(synchronized), lock接口 线程状态,上下文切换,守护线程 消费者和生产者的几种实现方式,...

    java范例开发大全源代码

     第1章 Java开发环境的搭建(教学视频:9分钟) 2  1.1 理解Java 2  1.2 搭建Java所需环境 3  1.2.1 下载JDK 3  1.2.2 安装JDK 4  1.2.3 配置环境 5  1.2.4 测试JDK配置是否成功 7  实例1 ...

    ndk层实现双进程守护

    在linux 下,利用子进程发起建立Socket 连接,保持主进程达到90%保活率,包含完整C++代码和Java代码,注释详细,可直接用于项目开发

    stat:服务器集群进程守护和编排工具

    STAT hub是一个基于Java的集群管理平台,他可以做服务分发、进程守护、健康检测、资源分配。STAT hub可以托管任意进程,可以是你自己开发的服务,也可以是开源的Tomcat、Kafka,或者是某个遗留系统,唯一的要求是...

    commotiond:Commotion 无线项目的系统管理守护进程

    这个嵌入式库和守护进程是构成嵌入式平台上 Commotion 项目新核心的开始。 这是一个非常pre-alpha 的软件,还没有做任何事情,但正在快速开发中。 建造它 注意:这个项目使用 CMake,所以你必须在你的系统上安装它...

    基于Java的视频会议系统(软件程序+WORD论文文档).zip

    服务器一般作为守护进程始终运行,监听网络端口,一旦有客户请求,就会启动一个服务进程来响应该客户,同时自己继续监听服务端口,使后来的客户也能及时得到服务。 数据在Internet中是以有限大小的包形式传输的,...

    NDK开发的简单实例(JNI及Android的C组件实现)

    1、编译本地调用的JAVA类 2、使用javah从JAVA类中转换成相应的头文件(已有genHeader.bat的脚本直接生成,其中的com.ex.sot.NativeDataManage是相应的类,需依据实现作修改) 3、实现相对应的*.c并调用C组件(在jni...

    android系统原理及开发要点详解

     10.3.2 RILD守护进程 246  10.3.3 libril库 247  10.3.4 RIL的实现库Reference RIL 247  10.3.5 Request(请求)流程 248  10.3.6 Response(响应)流程 249  10.3.7 RIL的移植工作 251  10.4 Java框架及...

    大厂学院高阶班java并发编程面试视频资料(6.95G)

    03_进程线程管程.mp4 54.58M 04_用户线程和守护线程.mp4 26.81M 05_对Future的改进.mp4 114.57M 06_CompletableFuture.mp4 44.98M 07_CompletableFuture四个函数.mp4 102.29M 08_get和join方法.mp4 59.24M 09_...

    android系统需求,FOTA升级,采用Google的方案,对接私有服务器,定时检测更新,双进程守护,SSL协议.zip

    软件开发设计:PHP、QT、应用软件开发、系统软件开发、移动应用开发、网站开发C++、Java、python、web、C#等语言的项目开发与学习资料 硬件与设备:单片机、EDA、proteus、RTOS、包括计算机硬件、服务器、网络设备、...

Global site tag (gtag.js) - Google Analytics