b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

多线程死锁的例子 jstack(查看线程)、jmap(查看内存)和jstat(性能分析)命令(4)

电脑杂谈  发布时间:2018-01-16 04:06:25  来源:网络整理

JBoss System Threads(1)-1 Jboss ?? 该线程是一个socket服务,默认端口号为: 1099。 主要用于接收外部naming service(Jboss?? JNDI)请求。

JCA PoolFiller Jboss ?????? 该线程主要为JBoss内部提供连接池的托管。?? 简单介绍一下工作原理 :

?????? Jboss内部凡是有远程连接需求的类,都需要实现ManagedConnectionFactory接口,例如需要做JDBC连接的

XAManagedConnectionFactory对象,就实现了该接口。然后将XAManagedConnectionFactory对象,还有其它信息一起包装到InternalManagedConnectionPool对象里面,接着将InternalManagedConnectionPool交给PoolFiller对象里面的列队进行管理。???? JCA PoolFiller线程会定期判断列队内是否有需要创建和管理的InternalManagedConnectionPool对象,如果有的话,则调用该对象的fillToMin方法, 触发它去创建相应的远程连接,并且将这个连接维护到它相应的连接池里面去。

JDWP Event Helper Thread JVM ????????????????????

JDWP是通讯交互协议,它定义了调试器和被调试程序之间传递信息的格式。它详细完整地定义了请求命令、回应数据和错误代码,保证了前端和后端的JVMTI和JDI的通信通畅。?? 该线程主要负责将JDI事件映射成JVMTI信号,以达到调试过程中操作JVM的目的。????

JDWP Transport Listener: dt_socket JVM 该线程是一个Java Debugger的器线程,负责受理客户端的debug请求。 通常我们习惯将它的端口设置为8787。

Low Memory Detector JVM 这个线程是负责对可使用内存进行检测,如果发现可用内存低,分配新的内存空间。

process reaper JVM ?????? 该线程负责去执行一个 OS 命令行的操作。

Reference Handler JVM ?????????????? JVM在创建main线程后就创建Reference Handler线程,其优先级最高,为10,它主要用于处理引用对象本身(软引用、弱引用、虚引用)的垃圾回收问题 。

Surrogate Locker Thread (CMS) JVM ?????????????????? 这个线程主要用于配合CMS垃圾回收器使用,它是一个守护线程,其主要负责处理GC过程中,Java层的Reference(指软引用、弱引用等等)与jvm 内部层面的对象状态同步。 这里对它们的实现稍微做一下介绍:这里拿 WeakHashMap做例子,将一些关键点先列出来(我们后面会将这些关键点全部串起来):

1.?? 我们知道HashMap用Entry[]数组来存储数据的,WeakHashMap也不例外, 内部有一个Entry[]数组。

2.???? WeakHashMap的Entry比较特殊,它的继承体系结构为Entry->WeakReference->Reference 。

3.?? Reference 里面有一个全局锁对象:Lock,它也被称为pending_lock.?????? 注意:它是静态对象。

4.???????????? Reference?? 里面有一个静态变量:pending。


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-60441-4.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...