Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Contemplate ThreadSafe Introduces Deadlock Detection

Contemplate ThreadSafe Introduces Deadlock Detection

This item in japanese


1.3.1 Deadlock Details Contemplate's ThreadSafe version 1.3.1 featuring a new deadlock detection rule for finding code that can deadlock because of the order that locks are acquired is now available. When deadlocks are detected, ThreadSafe reports which locks are held for each lock acquisition. On the right is an example of this detection using their Eclipse plugin.

InfoQ reported on ThreadSafe's first public release in August 2013, pointing out at that time that ThreadSafe did not catch everything:

InfoQ purposely introduced a potential "deadly-embrace" deadlock into the codebase, and ThreadSafe did not locate it.

With the 1.3.1 release, this is now fixed and ThreadSafe now finds deadlocks arising from circularity in lock dependencies.

The release includes rule-accuracy improvements, many minor improvements to the Eclipse plug-in and Command Line Interface, and six new rules:

To learn more about ThreadSafe, InfoQ sat down with Contemplate Founder and CEO, Don Sannella.

InfoQ: You first released ThreadSafe in August of 2013. How has adoption been?

Adoption really started to take off once we started making free 2-week trials available in November. Since then, we've seen adoption both by individual developers and by teams who are concerned about maintaining high-quality code, in a wide range of industries.

InfoQ: You added Deadlock Detection in 1.3.1, what's coming in the next release?

ThreadSafe 1.3.2 is faster, uses memory more efficiently for use with very large projects, and improves support for legacy Java versions.

InfoQ: Which usage pattern are you seeing most: Eclipse, Sonar or command line?

Eclipse and Sonar are currently most popular. The command line version is new in 1.3 and we expect interest to increase because it can be used either on a desktop or on a build server.

InfoQ: Are you planning on releasing a plugin for IntelliJ? What about NetBeans?

We would love to do a plugin for IntelliJ, but for now we are focusing on our Eclipse, Sonar and command line products. For users of other IDEs, the command line version provides similar functionality.

InfoQ: Are there any plans to offer a free license of ThreadSafe to open source projects?

We have already provided free licenses on request to a couple of open source projects and for use in teaching. We welcome further requests.

InfoQ: Are you working on any additional products, or do you plan to remain focused on ThreadSafe?

For now we are focusing on ThreadSafe and further improvements to its coverage and accuracy, including building in more knowledge of Android.

For more information about ThreadSafe, see Contemplate senior software engineer Robert Atkey's article, Discover and Diagnose Java Concurrency Problems Using Contemplate's ThreadSafe, and our coverage last year of ThreadSafe's first public release.

There's also a brief Introducing Contemplate ThreadSafe YouTube video that provides a quick overview of the product.

ThreadSafe 1.3.2 is expected to be released within the next week. You can request a trial of the latest version of ThreadSafe on their website.

Rate this Article


Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

  • why focus on eclipse??

    by Ryan Gardner,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    "We want to make a commercial tool for developers... And sell it to people to cheap to use a decent IDE"

  • Re: why focus on eclipse??

    by Vikram Gupta,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    There's at least one decent IDE that's free, no reason to be stuck in Eclipse hell

  • Re: why focus on eclipse??

    by Don Sannella,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Contemplate is a startup and we need to focus on one IDE. We picked Eclipse following discussions with early ThreadSafe adopters in investment banking, all of whom were using Eclipse, and all of whom could have paid for IntelliJ if they had wished to. We would love to support IntelliJ too, but in the meantime you can use the command-line version of ThreadSafe.

    While I'm here: google "Detecting Deadlocks without Drudgery" for much more about finding deadlocks with and without ThreadSafe.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p