Abstract
This work surveys the latest deadlock detection and control methods for parallel programs with its focus on the principal achievements of preventing deadlocks. It mainly discusses three methods based on Gadara nets, which respectively include: iterative control of general Gadara nets, iterative control of ordinary Gadara nets via Mixed Integer Programming (MIP) and iterative control of ordinary Gadara nets via Boolean satisfiability formulation (SAT). Finally, some directions for future research about deadlock control of multithreaded software based on Petri nets are discussed.