No, that was not the point. The blocking definition I used requires the ability to delay another threads indefinitely. If this condition is not present, one thread will make progress, and there is no deadlock -- although livelock is completely possible.