死锁,饥饿和活锁用来描述线程的活跃性问题
死锁:多个线程彼此占用其他线程的资源,各个线程都不愿意放弃资源,那么这个状态将永远的持续下去,这种状态就是死锁。
饥饿:指一个或多个线程因为种种原因无法获得所需的资源,导致一直无法执行。
活锁:两个线程主动将资源释放给对方使用,那么就会导致资源不断地在两个线程间跳动,而没有一个线程可以同时拿到所有资源正常执行。这种情况就是活锁。
死锁,饥饿和活锁用来描述线程的活跃性问题
死锁:多个线程彼此占用其他线程的资源,各个线程都不愿意放弃资源,那么这个状态将永远的持续下去,这种状态就是死锁。
饥饿:指一个或多个线程因为种种原因无法获得所需的资源,导致一直无法执行。
活锁:两个线程主动将资源释放给对方使用,那么就会导致资源不断地在两个线程间跳动,而没有一个线程可以同时拿到所有资源正常执行。这种情况就是活锁。