Jan 8, 2014
Two Types of Deadlock Detection: Cyclic and Acyclic
Intelligent Systems for Science and Information, Studies in Computational Intelligence
- ,
- Volume
- Vol.542
- Number
- First page
- 233
- Last page
- 259
- Language
- English
- Publishing type
- Research paper (scientific journal)
- DOI
- 10.1007/978-3-319-04702-7_14
Concurrent programs are difficult to test and debug due to their non-deterministic execution. For deadlocks, traditional deadlock detection algorithms depend on finding cycles in lock graphs created from application programs. This paper first introduces three kinds of blocked relations, lock-blocked, wait-blocked, and join-blocked for Java multi-threaded programs. Previous work does not consider the wait-blocked relations, nor the influence of thread interruption. The paper then proposes two types of deadlocks based on these blocked relations, that is, block-cycle type deadlocks and waiting-block type deadlocks which are acyclic. It also presents an example of implementation to detect these types of deadlocks, and addresses future directions.
- Link information
- ID information
-
- DOI : 10.1007/978-3-319-04702-7_14