Then you just replace deadlocks with livelocks, the fundamental problem AFAIK can't be avoided.