大厂面试Java各知识点综合面试题多线程,高并发

VIP免费
2024-12-10 6 0 368.52KB 9 页 5.9玖币
侵权投诉
多线程 / 高并发
1. stop() suspend() 方法为何不推荐使用?
反对使用 stop(),是因为它不安全。它会解除由线程获取的所有锁定,而且如果对
处于一种不连贯状态那么其他线程能在那种状态下检查和修改它们。结果很难检查
真正的问题所在。
suspend() 方法容易发生死锁调用 suspend() 的时候,目标线程会停下来,但却仍
然持有在这之前获得的锁定。此时,其他任何线程都不能访问锁定的资源,除非被 "
" 的线程恢复运行。对任何线程来说,如果它们想恢复目标线程,同时又试图使用任
何一个锁定的资源,就会造成死锁所以不应该使用 suspend()而应在自己的 Thread
类中置入一个标志,指出线程应该活动还是挂起。若标志指出线程应该挂起,便用 wait()
命其进入等待状态。若标志指出线程应当恢复,则用一个 notify() 重新启动线程。
2. sleep() wait() 有什么区别?
sleep 就是正在执行的线程主动让出 cpucpu 去执行其他线程 sleep 指定的时
间过后,cpu 才会回到这个线程上继续往下执行,如果当前线程进入了同步锁,sleep
方法并不会释放锁,即使当前线程使用 sleep 方法让出了 cpu,但其他被同步锁挡住
了的线程也无法得到执行。wait 是指在一个已经进入了同步锁的线程内,让自己暂
让出同步锁,以便其他正在等待此锁的线程可以得到同步锁并运行只有其他线程调
notify 方法notify 并不释放锁,只是告诉调用过 wait 方法的线程可以去参与
得锁的竞争了,但不是马上得到锁,因为锁还在别人手里,人还没释放。如果 notify
方法后面的代码还有很多,需要这些代码执行完后才会释放锁,可以在 notfiy 方法后
增加一个等待和一些代码,看看效果)调用 wait 方法的线程就会解除 wait 状态和
程序可以再次得到锁后继续向下运行。
3. 同步和异步有何异同,在什么情况下分别使用他们?
如果数据将在线程间共享。例如正在写的数据以后可能被另一个线程读到,或者正在读
的数据可能已经被另一个线程写过了,那么这些数据就是共享数据必须进行同步存取。
当应用程序在对象上调用了一个需要花费很长时间来执行的方法,并且不希望让程序
待方法的返回时,就应该使用异步编程,在很多情况下采用异步途径往往更有效率。
4. 当一个线程进入一个对象的一个 synchronized 方法后,其它线程是否可进入此对象的其
它方法?
其他方法前是否加了 synchronized 关键字,如果没加,则能。
如果这个方法内部调用了 wait,则可以进入其他 synchronized 方法。
如果其他个方法都加了 synchronized 关键字,并且内部没有调用 wait则不
能。
如果其他方法是 static它用的同步锁是当前类的字节码,与非静态的方法
能同步,因为非静态的方法用的是 this
5. 简述 synchronized java.util.concurrent.locks.Lock 的异同?
主要相同点:Lock 能完成 synchronized 所实现的所有功能。
主要不同点:Lock 有比 synchronized 更精确的线程语义和更好的性能。
synchronized 会自动释放锁, Lock 一定要求程序员手工释放,并且必须在 finally
摘要:

多线程/高并发1.stop()和suspend()方法为何不推荐使用?反对使用stop(),是因为它不安全。它会解除由线程获取的所有锁定,而且如果对象处于一种不连贯状态,那么其他线程能在那种状态下检查和修改它们。结果很难检查出真正的问题所在。suspend()方法容易发生死锁。调用suspend()的时候,目标线程会停下来,但却仍然持有在这之前获得的锁定。此时,其他任何线程都不能访问锁定的资源,除非被"挂起"的线程恢复运行。对任何线程来说,如果它们想恢复目标线程,同时又试图使用任何一个锁定的资源,就会造成死锁。所以不应该使用suspend(),而应在自己的Thread类中置入一个标志,指出线程...

展开>> 收起<<
大厂面试Java各知识点综合面试题多线程,高并发.pdf

共9页,预览2页

还剩页未读, 继续阅读

声明:本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。玖贝云文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知玖贝云文库,我们立即给予删除!
分类:计算机 价格:5.9玖币 属性:9 页 大小:368.52KB 格式:PDF 时间:2024-12-10

开通VIP享超值会员特权

  • 多端同步记录
  • 高速下载文档
  • 免费文档工具
  • 分享文档赚钱
  • 每日登录抽奖
  • 优质衍生服务
/ 9
客服
关注