Class MultiThreadedCodeIdentifierUtils


  • public class MultiThreadedCodeIdentifierUtils
    extends java.lang.Object
    Utility class with methods to identify multithreaded code
    • Constructor Detail

      • MultiThreadedCodeIdentifierUtils

        private MultiThreadedCodeIdentifierUtils()
    • Method Detail

      • isPartOfMultiThreadedCode

        public static boolean isPartOfMultiThreadedCode​(ClassContext classContext)
      • isMethodMultiThreaded

        public static boolean isMethodMultiThreaded​(org.apache.bcel.classfile.Method method,
                                                    ClassContext classContext)
      • hasMultiThreadedInstruction

        private static boolean hasMultiThreadedInstruction​(org.apache.bcel.generic.MethodGen methodGen)
      • isConcurrentLockInterfaceCall

        private static boolean isConcurrentLockInterfaceCall​(@DottedClassName
                                                             java.lang.String className,
                                                             java.lang.String methodName)
      • isInstanceOfLock

        private static boolean isInstanceOfLock​(@DottedClassName
                                                java.lang.String className)
      • isFieldIndicatingMultiThreadedContainer

        private static boolean isFieldIndicatingMultiThreadedContainer​(org.apache.bcel.classfile.Field field)
      • isFromAtomicPackage

        private static boolean isFromAtomicPackage​(java.lang.String signature)
      • isLocked

        public static boolean isLocked​(org.apache.bcel.classfile.Method currentMethod,
                                       CFG currentCFG,
                                       LockDataflow currentLockDataFlow,
                                       int pc)