死锁就是两个线程在运行时都在等待对方的锁
举一反三
- 两个或多个线程在互相等待对方释放锁,这种情况称为【】
- 系统发生死锁时,死锁进程的个数至少为()个;所有死锁进程都在等待资源,并且其中至少有()个进程已占有资源。
- 线程的安全主要来源于其运行的并发性和对资源的共享性,以下哪种方法可以解决线程死锁安全() A: 让一个线程在运行时,其他线程必须等待该线程运行完毕才能抢占CPU B: 通过程序确定资源的合理分配算法,避免线程永远占据系统资源 C: 需要暂停时,让线程的run()方法结束运行以释放资源;继续时,新开辟一个线程继续工作 D: 将线程暂停或继续,在Thread类中置入一个标志,指出线程应该活动还是挂起
- 两个事务相互等待对方释放资源,而得不到执行的现象称为( )。 A: 死锁 B: 活锁 C: 串行调度 D: 不可串行调度
- (线程的同步)下列叙述中,错误的是________。 A: Java中没有检测和避免死锁的专门机制 B: 程序中多个线程互相等待对方持有的锁,可能形成死锁 C: 为避免死锁,Java程序中可先定义获得锁的顺序,解锁是按加锁的反序释放 D: 为避免死锁,Java程序中可先定义获得锁的顺序,解锁是按加锁的正序释放