随时声明线程 和 jvm钩子的使用
来源:互联网 发布:直播辅助音效软件mac 编辑:程序博客网 时间:2024/06/06 03:30
一般使用线程都想需要实现Runnable接口或继承Thread类,但是有时我们没必要去声明一个类来达到使用线程的目的 ,随时随地声明你的线程。code below:
public void generateThread()
{
Thread tr = new Thread()
{
public void run()
{
while(true)
{
System.out.println("afsdf");
}
}
};
tr.start();//start the thread
}
jvm钩子的使用:首先需要向jvm注册需要运行的类,必须是一个线程类,当jvm关闭时按照想虚拟机注册的顺序来调用那些已经注册的线程类,可参考javaapi
首先实现一个线程类,例子代码
package cn.com;
public class ShutDownHookTest implements Runnable {
public void run() {
System.out.println("hahah i am running");
}
}
其次想jvm注册该线程类
package cn.com;
public class ShutdownApp {
public static void main(String[] args)
{
Runtime rt = Runtime.getRuntime();
rt.addShutdownHook(new Thread(new ShutDownHookTest()));//register to the jvm
}
}
最后运行程序,会输出hahah i am running,表明钩子已生效
- 随时声明线程 和 jvm钩子的使用
- 线程专用钩子和全局钩子的区别
- spring钩子方法和钩子接口的使用详解
- 钩子1(线程级的钩子)
- Onethink1.1 钩子和插件的使用!
- Block的声明和线程安全
- 系统钩子在C#的声明
- 能够随时结束线程的办法
- 全局变量的使用和声明
- 委托的声明和使用
- JVM里注册Spring的关闭钩子
- MFC线程钩子和全局钩子[HOOK DLL]
- C#什么是钩子,关于钩子的使用
- 钩子的使用
- 钩子的一般使用
- 钩子的使用
- 钩子的使用
- 钩子的使用总结!
- [转贴]提升进程权限为debug权限,无法禁止进程
- 宝宝日记一----手舞足蹈
- JSP进度条实例(下)
- WPF中的模板
- 开始学习jbpm3.2.1
- 随时声明线程 和 jvm钩子的使用
- 第一次作业
- linux下完全删除Oracle
- DAO读取
- 深入剖析微软ASP.NET Ajax中的数据绑定架构上篇之一
- Linux Autoconf/AutoMake学习笔记
- java中文件操作大全
- 浅析C#中的套接字编程
- [转贴]在Windows 2003中HOOK ZwCreateProcessEx