This is a programming problem and, in some cases, is unavoidable.
All a user can do is restart the program and hope deadlock does not reoccur.
In the file locking subsystem, two processes tried to modify some lock at the same time. In the multi-threading subsystem, two threads became deadlocked and could not continue. When a program using the threads library encounters this error, it should restart the deadlocked threads.
The symbolic name for this error is EDEADLOCK, errno=56.