我要运行一个线程,不论主线程main是否关闭,它都一直运行。 是否有办法啊!摆脱。
解决方案 »
- 跪求使用OSCACHE & SPRING 做个示例!
- 关于 getCurrentSession() 和 openSession()
- CVS同步问题
- 求助求助。。大大门帮帮。找不到符号!!!
- 删除功能实现问题
- DispatchAction问题 麻烦帮忙看看!!!
- 一个郁闷的HashMap问题。求各位英雄们帮帮忙啊!!
- 为什么soap ,webservice是通过接口传递的呢? 就和ejb 一样,通过接口在客户端和服务端之间传递?
- 要生成一个xml文件,已知dtd,并把生成的这个文件传到指定的url,用java怎么做?给个思路或例子?实际上是用xml文件传输东西。万分感谢,在
- insert 语句问题
- jquery的bug?
- 初学者,请教问题。。
public void run(){
while(ture){
Thread.sleep(5000);
//do someting
}
}
}public static void main(){
Thread t = new Test();
t.setDaemon(true);
t.start();
}
shutDown.setDaemon(true);
shutDown.start();
我的线程启动代码!我写了一个swing界面,来关闭网络连接。
当我swing界面关闭时候,此线程也被关闭了。
Runtime.getRuntime().addShutdownHook(new Thread() {
public void run() {
while (true) {
try {
Thread.sleep(1000);
System.out.print("ok");
} catch (Exception e) {
e.printStackTrace();
}
}
}
});
}
即 setDefaultCloseOperation(JFrame.CLOSE_ON_EXIT);
你不要设置退出程序,而是设置关闭窗口或者隐藏窗口就可以了
避免双重启动,可以通过socket来做,一方面程序启动的时候创建serversocket,如果端口被占用,就给端口发送消息,另一方面,程序监听端口,收到消息后做相应能够的处理,比如收到启动指令消息,如果窗口是隐藏的,就把它显示,收到退出指令消息,就退出程序要修改进程的名字,因为你的程序是通过JVM运行的,所以只能修改java.exe的名字来达到进程的改名,想隐藏进程,这不是java的技术范畴,是操作系统级别的,LZ自己搜索 windows隐藏进程 关键字能找到不少相关的信息的
这个有点不明白:我现在做的是一个Client,是不是在本Client里创建serversocket , 当发现端口被占用后 ,在处理抛出异常的时候进行处理呢?还有如何找到原先的那个程序,让它启动呢?