Multi-threaded Java Application Development

To take full advantage of the latest multi-core hardware, developers must utilize multiple threads in their applications. Mutli-threaded applications introduce an entirely new class of hard-to-find software failures, commonly known as concurrency defects. To date, testing for Concurrency defects such as Race Conditions, Thread Blocks, Atomicity and Deadlocks have been extremely difficult due to the complexity inherent in multi-threaded run-time environments. In this session, Ben Chelf, CTO of Coverity will explain how developers can find and eliminate concurrency defects early in the development cycle to avoid lengthy QA cycles or costly field bugs. In addition to an overview of the challenges between single-threaded and multi-threaded development styles, Chelf will also provide specific examples of how the use of combined static and dynamic code analysis can pinpoint the most dangerous Concurrency defects.