码迷,mamicode.com
首页 > 编程语言 > 详细

20165305 苏振龙《Java程序设计》第七·周课上测试补做

时间:2018-04-15 19:49:59      阅读:211      评论:0      收藏:0      [点我收藏+]

标签:runnable   就会   util   port   http   img   import   state   程序设计   

第十一章

?如果想在main()以外独立设计流程,可以撰写类操作java.lang.Runnable接口,流程的进入点是操作在run()方法中。
?如果想要加装主线程,就要创建 Thread 实例,要启动额外的主线程就是调用 Thread 实例的 start() 方法。
?主线程会从main()方法开始执行,直到main()方法结束后停滞JVM。如果主线程中启动了额外线程,默认会等待被启动的所有线程都执行完run()方法才终止JVM。如果一个Thead被表示为Daemon线程,在所有的非Daemon线程都结束时,JVM自动就会终止。
?Thread基本状态图:优先权高的先执行,否则输流执行。start——>runnable——>(blocked)——>running——>dead
?安插线程:当线程使用join()加入至另一个线程时,另一个线程会等待被加入的线程工作完毕,然后在继续它的动作,join()的意思表示将线程加入称为另一个线程的流程中。
?停止线程:线程完成run()方法后,就会进入Dead,进入Dead的线程不可以再次调用start()方法,否则会抛出IllegalThreadStateException异常。

import java.util.Arrays;

?CopyOnWriteArraySet操作了List接口,这个类的实例在写入操作时,内部会建立新数组,并复制原有数组索引的参考,然后在新数组上进行写入操作,写入完成后,再将内部原参考旧数组的变量参考至新数组.

代码托管

代码截图

技术分享图片

学习总结

?在学习时,不正确的使用synchronized会出现“死结”
?为了避免Lock对象的lock方法后,在后续执行流程中抛出异常而无法解除锁定,一定要在finally中调用Lock对象的unlock方法。

20165305 苏振龙《Java程序设计》第七·周课上测试补做

标签:runnable   就会   util   port   http   img   import   state   程序设计   

原文地址:https://www.cnblogs.com/2332175994-1314/p/8848790.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!