We develop a static deadlock analysis for commercial Android Java applications, of sizes in the tens of millions of LoC, under active development at Facebook. The analysis runs primarily at code-review time, on only the modified code and its dependents; we aim at reporting to developers in under 15 minutes. To detect deadlocks in this setting, we first model the real language as an abstract language with balanced re-entrant locks, nondeterministic iteration and branching, and non-recursive procedure calls. We show that the existence of a deadlock in this abstract language is equivalent to a certain condition over the sets of critical pairs of each program thread; these record, for all possible executions of the thread, which lock...
Static analysis has nowadays become one of the most popular ways of catching bugs early in the moder...
We present a framework for statically detecting deadlocks in a concurrent object-oriented language w...
none2noJaDA detects deadlocks of Java programs at static time. The tool uses typing rules to extract...
International audienceDeadlock analysis of multi-threaded programs with reentrant locks is complex b...
CAPEsDeadlocks are a common type of concurrency bug. When a deadlock occurs, it is difficult to cle...
Abstract. Concurrent programs are notorious for containing errors that are difficult to reproduce an...
We introduce the concept of deadlock immunity—a program's ability to avoid all deadlocks that match ...
Abstract. Library writers wish to provide a guarantee not only that each procedure in the library pe...
none2noThis paper presents a technique for deadlock detection of Java programs. The technique uses t...
International audienceThis paper is an introduction to the framework for the deadlock analysis of ob...
Thesis (S.M.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer S...
Dynamic analysis techniques have been proposed to detect potential deadlocks. Analyzing and comprehe...
Designing and implementing thread-safe multithreaded libraries can be a daunting task as developers ...
AbstractDeadlocks are a common error in programs with lock-based concurrency and are hard to avoid o...
Deadlock analysis of object-oriented programs that dynamically create threads and objects is complex...
Static analysis has nowadays become one of the most popular ways of catching bugs early in the moder...
We present a framework for statically detecting deadlocks in a concurrent object-oriented language w...
none2noJaDA detects deadlocks of Java programs at static time. The tool uses typing rules to extract...
International audienceDeadlock analysis of multi-threaded programs with reentrant locks is complex b...
CAPEsDeadlocks are a common type of concurrency bug. When a deadlock occurs, it is difficult to cle...
Abstract. Concurrent programs are notorious for containing errors that are difficult to reproduce an...
We introduce the concept of deadlock immunity—a program's ability to avoid all deadlocks that match ...
Abstract. Library writers wish to provide a guarantee not only that each procedure in the library pe...
none2noThis paper presents a technique for deadlock detection of Java programs. The technique uses t...
International audienceThis paper is an introduction to the framework for the deadlock analysis of ob...
Thesis (S.M.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer S...
Dynamic analysis techniques have been proposed to detect potential deadlocks. Analyzing and comprehe...
Designing and implementing thread-safe multithreaded libraries can be a daunting task as developers ...
AbstractDeadlocks are a common error in programs with lock-based concurrency and are hard to avoid o...
Deadlock analysis of object-oriented programs that dynamically create threads and objects is complex...
Static analysis has nowadays become one of the most popular ways of catching bugs early in the moder...
We present a framework for statically detecting deadlocks in a concurrent object-oriented language w...
none2noJaDA detects deadlocks of Java programs at static time. The tool uses typing rules to extract...