① java进程怎么安全关闭
就是有个main方法在死循环的查数据处理数据。然后要更新代码,不能直接kill呀,kill会把正在处理的数据弄丢,就需要在个监控,可以再跑的过程里让他停止读取数据,然后把内存里的数据处理完了再关闭
② 如何用Java关闭一个进程
解决这个问题,要看这个进程是java程序自定义的进程,还是操作系统的进程,操作系统的进程,又可以分为windows进程和linux进程
一、针对操作系统的进程:
1,首先java用户,要具有操作进程的权限
2. 针对windows操作系统的进程,比如QQ进程:
Stringcommand="taskkill/f/imQQ.exe";
Runtime.getRuntime().exec(command);
其中:taskkill 是命令名称,/f /im 是参数,QQ.exe是进程的可执行文件。
3.针对Linux操作系统
Stringcommand="kill/f/imQQ.exe";
Runtime.getRuntime().exec(command);
二、在Java程序中自定义的进程
思路:在线程中设置一个标志变量,当这个变量的值在外界被改变的时候,有机会结束运行的线程
publicclassT{
publicstaticvoidmain(String[]args){
//启动线程
MyThreadthread=newMyThread();
newThread(thread).start();
//你的其它的工作,此时线程在运行中
//你不想让线程干活了,停掉它
//注意,这只是一个标志,具体线程何时停,并不能精确控制
thread.allDone=true;
}
}
{
booleanvolatileallDone=false;
publicvoidrun(){
//每次循环都检测标志
//如果设置停止标志时已经在循环里
//则最长需要等待一个循环的时间才能终止
while(!allDone){
//循环里的工作
}
}
}
③ 有没有java进程kill(或者Terminate)掉之后,然后执行的方法吗请大神指点 如果能解决我的问题50分送上
可以用Future future=executorServer.submit(new callable(){...})//提交线程。
future.cancle();//取消线程
executeServer.submit(new callable(){...})//再次执行线程
④ java怎么删除被进程占用的文件
删除被进程占用的文件,可以先判断文件是否被删除,如果没有,则让系统强制回收资源,进行文件的删除,示例如下:
booleanresult=f.delete();//判断是否删除完毕
if(!result)
{
System.gc();//系统进行资源强制回收
f.delete;
}
⑤ linux java进程kill后 如何启动呢
java -jar ****.jar即可
⑥ 如何通知java进程结束
处理数据的程序段用try catch包围起来
1、如果出问题了,记录到当前处理数据的节点,下次再启动,读取上次的节点接着处理。
2、如果没出问题,普通的java程序运行完毕,自动就会结束进程了,实在不行,用System.exit(0);退出程序
⑦ java 怎么强制关闭 一个线程
不建议 强制关闭 有时候强制关闭会抛出异常 或者根本关闭不了
你在线程中设置个boolean 变量 flag 加个判断
你想关闭的时候控制一下 当flag==false的时候 就跳出线程
2楼的 如果线程不阻塞,你调用interrup方法根本不起作用 只有阻塞时才起作用
⑧ springcloud jar包启动会把另外一个java进程kill掉
启动java后台进程有两种方式:
1. 绝对路径/bin/java() : 后台运行,你关掉终端会停止运行
2. nohup 绝对路径/bin/java (java程序) : 后台运行,你关掉终端也会继续运行
java相关操作有:
查看java进程信息:
ps -ef | grep java
2.结束java进程:
kill -9 java程序名称
⑨ 利用linux的命令kill -9杀死java程序会有什么后果
正常的java程序,你启动,ctrl+c退出的时候也跟着退出了。
用nohup /run.sh & 这样的需要用kill -9 或者你自己写一个特殊的sh用来专门杀这个进程也可以、