Coverity today announced the release of Coverity Thread Analyzer for Java. The product claims to be the first dynamic analysis tool for multi-threaded applications that automatically detects concurrency defects that can cause data corruption and application failures. Coverity Thread Analyzer can also be used in concert with Coverity Prevent, the static analysis tool, to create a powerful software quality solution that will help developers control the complexity of writing multi-threaded applications.
“The continued growth of multi-core processors has forced development teams to begin creating multi-threaded applications whether they are ready or not,” said Michael Monticello, security and risk analyst at Enterprise Management Associates.
Coverity Thread Analyzer for Java observes code as it is executed and automatically and predictably identifies race conditions and deadlocks. The product is unique in the field of dynamic analysis because it detects not only problems that will occur in limited testing environments, but also problems that have the potential to occur over extended operations in field environments.
Coverity Thread Analyzer is also the first dynamic analysis solution that can reduce the risk inherent in migrating complex, single-threaded code bases to perform effectively in multi-core environments. The product accomplishes this by reporting thread-shared data to users, indicating locations where a locking discipline should be introduced. This allows developers to proactively identify existing and potential concurrency issues, so they can eliminate them before they cause failures in the field.
Coverity Thread Analyzer for Java simplifies the process of testing complex multi-threaded applications that execute concurrent operations. Product benefits for developers include:
• Automatic Defect Detection – Unique thread analysis automatically detects concurrency defects including race conditions and deadlocks
• Low Overhead – Sophisticated technology allows the tool to run with a significantly lower impact on memory and system performance than similar tools
• Eclipse IDE Integration – Immediately find and correct concurrency defects at the developer to accelerate overall software development
• Coverity Prevent Integration – Coverity’s static and dynamic analysis products can be connected to create a powerful combination for ensuring superior software quality
Coverity Thread Analyzer is a standalone product that runs on the following platforms: Linux (32-bit & 64-bit), Solaris Sparc, Solaris X86, Windows XP and Server 2003, Mac OS X. The product supports Sun JDK 1.5, IBM’s 1.5 JVM and BEA Jrockit 5.