`

WAS thread hung (AjTypeSystem)

    博客分类:
  • Java
 
阅读更多

最近WAS经常thread hung.

 

Owns Monitor Lock on java/util/HashMap@00002AAAB5A331C0/00002AAAB5A331D8

at java/util/WeakHashMap.getEntry(WeakHashMap.java:400(Compiled Code))
at java/util/WeakHashMap.containsKey(WeakHashMap.java:386(Compiled Code))
at org/aspectj/lang/reflect/AjTypeSystem.getAjType(AjTypeSystem.java:37(Compiled Code))

 

将AjTypeSystem.class 从aspectjrt-1.5.3.jar upgrade 到 aspectjrt-1.6.10.jar, 解决问题.

 

// Source File Name:   AjTypeSystem.java

package org.aspectj.lang.reflect;

import java.lang.ref.WeakReference;
import java.util.Map;
import java.util.WeakHashMap;
import org.aspectj.internal.lang.reflect.AjTypeImpl;

// Referenced classes of package org.aspectj.lang.reflect:
//            AjType

public class AjTypeSystem
{

    private static Map ajTypes = new WeakHashMap();

    public AjTypeSystem()
    {
    }

    public static AjType getAjType(Class fromClass)
    {
        if(ajTypes.containsKey(fromClass))
        {
            WeakReference weakRefToAjType = (WeakReference)ajTypes.get(fromClass);
            AjType theAjType = (AjType)weakRefToAjType.get();
            if(theAjType != null)
            {
                return theAjType;
            } else
            {
                theAjType = new AjTypeImpl(fromClass);
                ajTypes.put(fromClass, new WeakReference(theAjType));
                return theAjType;
            }
        } else
        {
            AjType theAjType = new AjTypeImpl(fromClass);
            ajTypes.put(fromClass, new WeakReference(theAjType));
            return theAjType;
        }
    }

}

 

// Source File Name:   AjTypeSystem.java

package org.aspectj.lang.reflect;

import java.lang.ref.WeakReference;
import java.util.*;
import org.aspectj.internal.lang.reflect.AjTypeImpl;

// Referenced classes of package org.aspectj.lang.reflect:
//            AjType

public class AjTypeSystem
{

    private static Map ajTypes = Collections.synchronizedMap(new WeakHashMap());

    public AjTypeSystem()
    {
    }

    public static AjType getAjType(Class fromClass)
    {
        WeakReference weakRefToAjType = (WeakReference)ajTypes.get(fromClass);
        if(weakRefToAjType != null)
        {
            AjType theAjType = (AjType)weakRefToAjType.get();
            if(theAjType != null)
            {
                return theAjType;
            } else
            {
                theAjType = new AjTypeImpl(fromClass);
                ajTypes.put(fromClass, new WeakReference(theAjType));
                return theAjType;
            }
        } else
        {
            AjType theAjType = new AjTypeImpl(fromClass);
            ajTypes.put(fromClass, new WeakReference(theAjType));
            return theAjType;
        }
    }

}
 
分享到:
评论

相关推荐

    The WorkforceServices service hung on starting.

    The WorkforceServices service hung on starting.

    Han So Tranh Hung_Hung_book_

    《韩素音传:洪hung书》是一部关于著名华裔作家韩素音的传记作品,标题中的“Han So Tranh Hung”即是韩素音的名字,“Hung book”可能是指该系列书籍的一个特定版本或者专题。从描述“truyen lich su han so tranh ...

    Hung Cuong ISP Prog v6_b200606_Hung_ABC_

    【标题】"Hung Cuong ISP Prog v6_b200606_Hung_ABC_" 指的是一款由Hung Cuong开发的ISP(In-System Programming)编程工具的版本,该版本号为v6_b200606,其中“Hung_ABC”可能是开发者或特定版本的标识符。...

    Han So Tranh Hung_Hung_book_源码.zip

    【描述】"Han So Tranh Hung_Hung_book_源码.zip" 描述简单明了,仅是文件名的重复,暗示该压缩包包含的确实是《编程之谜》一书的源代码。由于没有更多的上下文信息,我们可以推测这可能是作者为了教学或学习目的...

    OPCdotNETLib_OPCdotNETLib_Hung_C++_

    在标题"OPCdotNETLib_OPCdotNETLib_Hung_C++_"中,"OPCdotNETLib"是指一个.NET框架下的OPC客户端库,允许开发者使用C#或VB.NET等.NET语言来访问OPC服务器提供的数据和服务。"Hung"可能是一个开发者的姓名,他或她...

    台大李宏毅 (Hung-Yi Lee) 教授的Machine Learning (2016, Fall)

    《台大李宏毅教授的Machine Learning (2016, Fall)》是一门深受学习者欢迎的在线课程,由知名计算机科学家李宏毅教授主讲。这门课程深入浅出地介绍了机器学习这一领域的核心概念、算法和应用,旨在帮助学生掌握如何...

    tsclib (1)_hung36w_TSCLib.dll_

    **TSCLib (1)_hung36w_TSCLib.dll: Java 版本的TSCLib 示例工程** 本文将深入探讨 `TSCLib`,这是一个与`hung36w`相关的动态链接库(DLL),其Java实现版本在工程中被广泛应用。`TSCLib` 可能是一个专为特定功能或...

    不等式的秘密 Pham Kim Hung - Secrets in Inequalities, Vol. 1 - Basic Inequalities

    《不等式的秘密》第一卷——基础不等式,是越南数学家Pham Kim Hung的作品,专注于不等式的理解和应用。Pham Kim Hung是一位在数学竞赛培训领域备受尊敬的专家,其著作为众多竞赛选手提供了重要的解题思路与技巧。这...

    Deep Learning Tutorial 李宏毅 Hung-yi Lee

    李宏毅和Hung-yi Lee合著的Deep Learning Tutorial是一份深入浅出的深度学习教程,旨在介绍深度学习的基本概念、技巧和最新进展。本文从以下几个部分详细介绍深度学习的相关知识点。 首先,教程指出深度学习为何会...

    UL 1278-2022 Movable and Wall- or Ceiling-Hung Electric Room

    UL 1278-2022 Movable and Wall- or Ceiling-Hung Electric Room

    chrome浏览器崩溃一键修复

    chrome浏览器崩溃解决 @echo off reg add HKLM\SOFTWARE\Policies\Google\Chrome\ /v RendererCodeIntegrityEnabled /t REG_DWORD /d 0

    pokemon游戏cp值数据 来自李宏毅 (Hung-yi Lee)教授课程

    全面记录pokemon游戏中重要动物的属性指标,可用于训练自己的模型,预测动物升级后的cp值使用,同时是李宏毅 (Hung-yi Lee)教授课程的模型训练资源

    异常终止会话导致系统被Hung

    问题和现象接到生产支持的同事报告:数据库反应非常慢,很多数据库操作无法完成,DB出在被hung住的状态。同时,他们通过OEM发现其中一个节点(我们的数据库是10GRAC环境,3个节点)上发现存在很高的...

    juzhenliancheng.zip_hung2g1

    C语言实现动态规划 矩阵连乘问题! 问题:给定n个矩阵{A1,A2,…,An},其中Ai与Ai+1是可乘的,i=1,2,…,n-1。计算这n个矩阵的连乘积。由于矩阵乘法满足结合律,故计算矩阵的连乘积可以由许多不同的计算次序。...

    Deep Learning Tutorial by 李宏毅 (Hung-yi Lee)

    《李宏毅深度学习教程》是由台湾大学的著名教授李宏毅(Hung-yi Lee)提供的深度学习资源,因其深入浅出的讲解而备受推崇。这份教程覆盖了深度学习的基础到高级概念,对于想要理解并掌握这一领域的学习者来说,无疑...

    road_building_extraction-master_道路_道路提取_hung36w_building_roadext

    标题“road_building_extraction-master_道路_道路提取_hung36w_building_roadext”涉及到一个项目,该项目专注于使用深度学习技术进行道路提取。道路提取在地理信息系统(GIS)、自动驾驶、城市规划等领域具有重要...

    communication_theory_simulation-master_hung8ua_调制解调_theory_通信系统仿

    在这个"communication_theory_simulation-master_hung8ua_调制解调_theory_通信系统仿"项目中,我们可以深入学习并实践通信工程中的关键概念,特别是调制解调技术和通信系统的模拟。 调制解调技术是通信系统的心脏...

    2015春季七年级英语下册 Unit 11 How was your school trip课文重难点讲解(无答案)(新版)新人

    【Unit 11 How was your school trip? 课文重难点讲解】 本单元的主题围绕学校旅行展开,主要涉及的语法和词汇知识如下: 1. **动词的过去式**: - `hang` 的两种过去式形式需区分:`hang`(闲逛、悬挂)的过去式...

    2013年七年级英语下册 Unit 11 How was your school trip知识精讲精练(无答案)(新版)人教新目

    【Unit 11 How was your school trip】是2013年七年级英语下册的一个教学单元,主要探讨的是如何用英语描述过去的经历,特别是学校旅行。本单元的核心语法是【一般过去时态】,用于表达过去发生的动作或状态。在这一...

    Hung-Tam-D-Gap-for-EVI-to-ZAMP.pdf

    作者Nguyen Van Hung和Vo Minh Tam首先引入了Yamashita和Fukushima为EVI提出的正则化间隙函数,并在某些适当条件下进行了研究。然后,他们通过这些正则化间隙函数提出了EVI的D-Gap函数。此外,他们还发展了基于...

Global site tag (gtag.js) - Google Analytics