- 1、本文档共254页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
线程调度 调整各个线程的优先级 Thread 类中表示优先级的静态常量 static int MAX_PRIORITY: 最高优先级,取值为10。 static int MIN_PRIORITY: 最低优先级,取值为1。 static int NORM_PRIORITY: 默认优先级,取值为5。 设置优先级的方法 void setPriority(int newPriority): 设定线程的执行优先级。数字越大,优先级越高。 int getPriority(): 得到线程的优先级值。 线程调度 Thread.sleep(long millins)方法 线程执行sleep方法时,放弃CPU进入阻塞状态 参数为长整型,表示sleep时间,以毫秒为单位 Thread.yield()方法 线程执行yield方法时,将放弃CPU,将CPU交给就绪队列中同等优先级的线程,自己回到就绪状态 如果就绪队列中没有同等优先级的线程,则yield方法什么也不会做 两者的区别 sleep不考虑优先级,而yield要考虑优先级 sleep后进入阻塞状态,yield后进入就绪状态 sleep会抛出InterruptedException,而yield不会 sleep方法的可移植性更好 线程调度 join() 方法:等待其他线程结束 在当前线程中调用另外一个线程的join方法,当前线程将转到阻塞状态,直至另外一个线程运行完毕后才恢复运行。 join()方法会抛出InterruptedException 后台线程 后台线程:为其他线程提供服务的线程,也称为守护线程。 后台线程与前台线程相伴相随,只有全部前台线程结束生命周期,后台线程才结束生命周期 主线程默认情况下是前台线程 用Thread的setDaemon(true)可将一个线程设置为后台线程,但必须在调用start()方法之前设置 Thread的isDaemon()方法可判断一个线程是否是后台线程 线程同步 当多个线程同时读写同一份共享资源的时候,可能会引起冲突 我们需要引入线程“同步”机制,保证线程在对共享资料进行操作时的独享性,这种操作也称为原子操作 同步机制的原理:为共享资源加上“同步锁” 实现机制:synchronized关键字 线程同步 synchronized关键字的用法 private int resource; public synchronized void synMethod(){ resource++; } private int resource; public void synMethod(){ synchronized(lock){ resource++; } } 线程同步 线程同步的特征 同步代码块与非同步代码块同时操作共享资源时,也会造成竞争; 每个对象都有唯一的同步锁 静态方法也可以使用synchronized关键字 线程执行同步代码时,也可以进行中断,但中断时并不释放同步锁 数组的使用 工具类,提供了常用的数组操作方法: SDK中:Arrays类 第三方:ArrayUtils类(Apache Commons Lang) 应用: 打印数组、数组的排序、数组的拷贝、合并数组、检查某个元素是否存在、元素反转、移除元素、转换为集合 Java集合框架 Java API中设计了一组集合类,表示一组Java对象组成的数据结构,这样的类也可以看出是存储对象的容器。 这一组类以及相关的接口被统称为Java集合框架(Collection Framework),定义在java.util包 集合中的Java对象可以有不同的组成形式: 重复或不重复的对象 有序或无序的对象 是否是与键值映射的对象等 Java集合框架 三种集合: Set:一种不包含重复的元素的无序Collection List:有序的Collection,类似于数组,可看成长度可变数组 Map:一种把键对象和值对象进行关联并存储的容器 Java集合框架 Java Collection框架中的接口 Java集合框架-Collection Java集合框架 Iterable接口(java.lang) 实现了Iterable接口的类都是可迭代的,并包含一个迭代器 Collection接口 集合类的基本接口,Set与List的父接口,定义了集合类(Set与List)的通用方法 添加对象、删除对象、获取长度、遍历等 Iterator接口 对 collection 进行迭代的迭代器。 Java SE5.0后,集合类的参数为泛型类 Collection接口的方法 Iterator接口的方法 Java集合框架-List List接口 有序的元素(对象)集合,也称为序列,可包含重复元素,允
您可能关注的文档
- 《跨国公司经营与管理》全套教学课件.ppt
- 《连锁企业市场》全套教学课件.ppt
- 《普通话口语交际》全套教学课件.ppt
- 《数据库原理及应用》全套教学课件.ppt
- 数字电路EDA设计(第二版)全套教学课件.ppt
- 2023年12月山东体育学院招考聘用工作人员10人笔试近6年高频考题难、易错点荟萃答案带详解附后.docx
- 2023年12月份北京市农林科学院公开招聘47人笔试近6年高频考题难、易错点荟萃答案带详解附后.docx
- 2023年12月份湖北宜昌高新区总工会公开招聘协理员2人笔试近6年高频考题难、易错点荟萃答案带详解附后.docx
- 2023年12月份陕西宝鸡太白县人力资源和社会保障局公开招聘(3人)笔试近6年高频考题难、易错点荟萃答案带详解附后.docx
- 2023年12月份陕西宝鸡陇县人力资源和社会保障局公开招聘(10人)笔试近6年高频考题难、易错点荟萃答案带详解附后.docx
- 2023年12月人民日报社安徽分社招考聘用工作人员笔试近6年高频考题难、易错点荟萃答案带详解附后.docx
- 2023年12月先进技术成果西部转化中心(四川省)面向社会公开招考笔试近6年高频考题难、易错点荟萃答案带详解附后.docx
- 2023年12月国家海洋局第一海洋研究所科研助理公开招聘1人笔试近6年高频考题难、易错点荟萃答案带详解附后.docx
- 2023年12月安徽淮南经济技术开发区城市社区专职网格员招考聘用8人笔试近6年高频考题难、易错点荟萃答案带详解附后.docx
- 2023年12月云南昭通市教体系统招考聘用优秀紧缺教师406人笔试近6年高频考题难、易错点荟萃答案带详解附后.docx
- 2023年12月份吉林大学专职辅导员公开招聘15人笔试近6年高频考题难、易错点荟萃答案带详解附后.docx
- 2023年12月北京市第十二中学教师招考聘用笔试近6年高频考题难、易错点荟萃答案带详解附后.docx
- 2023年12月天津市第二耀华中学招考聘用高层次教育人才笔试近6年高频考题难、易错点荟萃答案带详解附后.docx
- 2023年12月安徽合肥市第八中学生活教师招考聘用笔试近6年高频考题难、易错点荟萃答案带详解附后.docx
- 2023年12月云南玉溪华宁县教育体育局提前招考聘用紧缺专业教师14人笔试近6年高频考题难、易错点荟萃答案带详解附后.docx
文档评论(0)