ThreadSafe

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
ThreadSafe
DeveloperContemplate
Stable release
1.3 / March 28, 2014; 12 years ago (2014-03-28)
Repository
  • {{URL|example.com|optional display text}}Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
Engine
    Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
    Operating systemCross-platform: Linux, OS X, Windows
    TypeStatic code analysis
    LicenseProprietary software
    Websitewww.contemplateltd.com/threadsafe

    ThreadSafe is a source code analysis tool that identifies application risks and security vulnerabilities associated with concurrency in Java code bases, using whole-program interprocedural analysis.[1][2][3][4] ThreadSafe is used to identify and avoid software failures in concurrent applications running in complex environments.[1][2][5][6]

    Features

    [edit | edit source]

    ThreadSafe detects Java concurrency defects:[2][3][4]

    • Race conditions – which lead to incorrect or unpredictable behaviour that is difficult to reproduce in a debugger.
    • Deadlocks[7] – caused by circular waits between threads waiting for shared resources.
    • Unpredictable results – caused by incorrect handling of concurrent collections, bad error handling, or mixed object synchronization.
    • Performance bottlenecks – caused by incorrect API usage, redundant synchronization, and unnecessary use of shared mutable state.

    ThreadSafe is integrated with the Eclipse software development environment and with the SonarQube software quality management platform. Contextual information is provided within the development environment to assist the developer with the investigation and resolution of concurrency issues, directly in the code.[2][3][4] A command-line version is available for users of IDEs other than Eclipse and for build process integration.

    Checking adherence to standards

    [edit | edit source]

    ThreadSafe detects violations of the concurrency-related rules in the CERT Oracle Secure Coding Standard for Java.[8]

    See also

    [edit | edit source]

    References

    [edit | edit source]
    1. ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    2. ^ a b c d Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    3. ^ a b c Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    4. ^ a b c Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    5. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    6. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    7. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    8. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    [edit | edit source]