线程锁可以解决线程同步
对
举一反三
- 调用object.wait()时,线程先要获取这个对象的锁,当前线程必须与锁对象保持同步,把当前线程添加到等待队列中,随后另一线程可以同步同一个对象锁来调用notify(),这样将唤醒原来等待中的线程,然后释放该锁
- 关于线程同步的描述错误的是哪个() A: 线程同步的出现解决了线程安全问题 B: 当线程相当多时,每个线程都去判断同步上的锁,很耗费资源 C: 同步是指多个线程同时访问共享对象 D: 如果出现了同步嵌套,就容易出现死锁问题
- 当一个线程拥有对象锁时,其他线程也可以获取这个锁。
- ()是一提供线程同步的基本锁。 A: 互斥量 B: 线程数据 C: 信号量 D: 全局变量
- 面四个选项中,哪些是线程进入阻塞状态的原因? A: 线程试图获取某个对象的同步锁,而该锁被其它线程持有 B: 线程调用了另一个线程的join()方法 C: 当线程调用了一个阻塞式的IO方法 D: 线程调用了setDaemon(booleanb)方法
内容
- 0
【单选题】使当前线程放弃同步锁并进入等待,直到其他线程进入此同步锁,并调用notify()或notifyAll()方法唤醒该线程为止的是什么方法声明() A. void notify() B. void notifyAll() C. void wait() D. 无
- 1
线程同步是指:当一个线程使用某同步方法时,其它线程想使用该方法则必须等待其使用完毕才可以。
- 2
下列关于线程同步的说法中,哪一项是错误的? A: 线程同步需要借助关键字synchronized实现。 B: 线程同步会降低程序的性能。 C: 一个线程正在使用synchronized修饰的方法时,其他线程必须等待。 D: 多个线程可以同时执行synchronized修饰的方法。
- 3
对于wait()方法,下面说法正确的是?() A: wait()方法的调用者是同步锁对象 B: wait()方法使线程进入等待状态 C: 调用同一锁对象的notify()或notifyAll()方法可以唤醒调用wait()方法等待的线程 D: 调用wait()方法的线程会释放同步锁对象
- 4
以下不属于线程同步机制的是( )。 A: 条件变量 B: 互斥锁 C: 读写锁 D: 正则表达式