没有饥饿的解决方案也是没有死锁的解决方案吗?反之亦然?

Is solution without starvation also solution without deadlocks? And vice versa?

我只是想知道...

没有饥饿的解决方案也是没有死锁的解决方案吗?反之亦然, 没有死锁的解决方案也是没有饥饿的解决方案吗?

没有饥饿的解决方案意味着系统是 "fair";每个线程只能访问共享的有限资源以取得进展。在这种情况下,我会假设没有死锁。死锁是饥饿线程之路的尽头……它们都饿死了,没有人取得进展。

没有死锁的解决方案仍然可能出现这样的情况,即只有线程的子集可以 "fair" 访问共享的有限资源。其余的线程会饿死。