Multithreaded and multiprocess application architectures help improve performance, but they also increase the risk of challenging concurrency defects such as threading deadlocks, multithreading race conditions, read-before-writes, and shared memory corruption. This paper describes concurrency defects as well as the best practices and technologies for finding and resolving them.
Undo’s technology allows the world’s biggest companies to improve the quality and reliability of their software. We use data-driven diagnosis and debugging to help the largest software companies resolve their most challenging software defects and improve customer experience.