为了账号安全,请及时绑定邮箱和手机立即绑定

漫画 | Java多线程与并发(一)

标签:
Java

1、什么是线程?

 

https://img1.sycdn.imooc.com//5be451f0000137dc10800540.jpg

2、线程和进程有什么区别?

 

https://img1.sycdn.imooc.com//5be452010001ad4010800540.jpg

3、如何在Java中实现线程?

 

https://img1.sycdn.imooc.com//5be452090001ab4010800540.jpg

4、Java关键字volatile与synchronized作用与区别?

 

https://img1.sycdn.imooc.com//5be452130001eae810800760.jpg

volatile修饰的变量不保留拷贝,直接访问主内存

https://img1.sycdn.imooc.com//5be4521f000184a510800815.jpg

synchronized用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码

 

5、有哪些不同的线程生命周期?

https://img1.sycdn.imooc.com//5be4522900013be610800572.jpg

6、你对线程优先级的理解是什么?

https://img1.sycdn.imooc.com//5be452320001dbb410800572.jpg

7、什么是死锁(Deadlock)?如何分析和避免死锁?

 

https://img1.sycdn.imooc.com//5be4523f0001a90010800610.jpg

8、什么是线程安全?Vector是一个线程安全类吗? 

https://img1.sycdn.imooc.com//5be4524900010f1f10800610.jpg

9、Java中如何停止一个线程?

https://img1.sycdn.imooc.com//5be4525900011e4c10800599.jpg

10、什么是ThreadLocal?

https://img1.sycdn.imooc.com//5be45261000129c310800599.jpg

11、Sleep()、suspend()和wait()之间有什么区别?

https://img1.sycdn.imooc.com//5be4526e00010a8410800572.jpg

注意:sleep()是一个静态方法。这意味着只对当前线程有效,一个常见的错误是调用t.sleep(),(这里的t是一个不同于当前线程的线程)。即便是执行t.sleep(),也是当前线程进入睡眠,而不是t线程。t.suspend()是过时的方法,使用suspend()导致线程进入停滞状态,该线程会一直持有对象的监视器,suspend()容易引起死锁问题。

https://img1.sycdn.imooc.com//5be4527a0001695410800501.jpg

12、什么是线程饿死,什么是活锁?

https://img1.sycdn.imooc.com//5be452850001872e10800689.jpg

 

13、什么是Java Timer类?(如何创建一个有特定时间间隔的任务?)

https://img1.sycdn.imooc.com//5be4528e0001abf710800507.jpg

14、Java中的同步集合与并发集合有什么区别?

https://img1.sycdn.imooc.com//5be452950001f83710800599.jpg

15、同步方法和同步块,哪个是更好的选择?

https://img1.sycdn.imooc.com//5be4529f00012e6a10800572.jpg

原文出处:https://www.cnblogs.com/javazhiyin/p/9913646.html  

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 1
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消