热门文档
- 2022-09-18 20:22:00 中国人为什么看不起中国人 张鸣
- 2023-04-19 15:04:26 《千家妙方 上册 1982年》(李文亮等编)
- 2022-09-18 20:22:00 中国兵法之起源 编委会
- 2023-10-13 17:09:40 楚辞 中华传统诗词经典 可复制-李山-9787101097528
- 2022-11-24 16:17:09 《性体验与性爱心理》尤里-谢尔巴特赫
- 2022-11-24 16:17:09 《性爱健康指南》石四维编著
- 2023-10-13 17:09:40 超速学习:我这样做,一个月学会素描,一年学会四种语言,完成MIT四年课程-斯科特·扬著,林慈敏译-9789861755533
- 2022-09-18 19:48:57 心理催眠术 迈克尔.赫普,温迪.德雷顿著
- 2023-10-13 17:09:40 初中诗词格律读本 可复制-周建忠 徐乃为 王业强编著-9787101121704
- 2023-10-13 17:09:40 曾国藩家书 中华经典藏书(升级版)可复制-檀作文译注-9787101115482
- 2022-09-18 19:48:57 成功创业72绝招 艾凡著
- 2023-01-11 15:23:39 孔子学院传播研究_刘程 安然著_9787516112922
1、本文档共计 178 页,下载后文档不带www.pdfdz.com水印,支持完整阅读内容。
2、古籍基本都为PDF扫描版,所以文档不支持编辑功能,即不支持文档内文字的复制粘贴。
3、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
4、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
5、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。
2、古籍基本都为PDF扫描版,所以文档不支持编辑功能,即不支持文档内文字的复制粘贴。
3、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
4、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
5、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。
equals (Ubject obj):boolean Ubjectexchange (Object x):Object Exchangerexchange (Object x,long timeout,TimeUnit unit):Object ExchangergetClass(Class>-ObjecthashCode (int -Objectnotify(void -ObjecttoString(String Objectwait:void Objectwait (long timeout):void -Objectwait (long timeout,int nanos):void Object图1-2美Exchanger中的API1.1 Sephore的使用本章将对Sephore?类中的全部方法进行案例式的实验,这样可以全面地了解此类提供了哪些核心功能。单词Sephore['semf):(r]的中文含义是信号、信号系统。此类的主要作用就是限制线程并发的数量,如果不限制线程并发的数量,则CPU的资源很快就被耗尽,每个线程执行的任务是相当缓慢,因为CPU要把时间片分配给不同的线程对象,而且上下文切换也要耗时,最终造成系统运行效率大幅降低,所以限制拼发线程的数量还是非常有必要的。在生活中也存在这种场景,比如一个生产键盘的生产商,发布了10个代理销售许可,所以最多只有10个代理商来获得其中的一个许可,这样就限制了代理商的数量,同理也限制了线程并发数的数量,这就是Sephore类要达到的目的。Sephore类发放许可的计算方式是"减法”操作。1.2 Exchanger的使用以在本节将介绍使用此类在2个线程之间传递任意数据类型的数据,Exchanger类的使用与结构相当简单,主要的学习点就是exchange()方法。1.3本章总结类Sephore的主要作用是限制并发执行的线程个数,它具有synchronized)所不具有的强大功能,比如等待获得许可的同时可以加入等待时间,还有尝试是否可以持有锁等这类扩展功能,可以说Sephore类是强有力的控制并发线程个数的解决方案之一,而Exchanger是线程间传输数据的方式之一,而且在传输的数据类型上并没有任何限制。第2章CountDownLatch和CyclicBarrier的使用在ava并发包中控制线程的同步还有一些比较常见的工具类CountDownLatch和CyclicBarrier,这两个工具类可以使线程在同步的处理上更加灵活,比如支持同步计数重置、等待同步线程个数等常见功能。景,这两个工具将同步与线程“组团”做任务完美进行了支持。2.1 CountDownLatch的使用单词Latch的发音为lxt],中文翻译是门闩,也就是有“门锁”的功能,所以当门没有打开时,N个人是不能进入屋内的,也就是N个线程是不能继续向下运行的,支持这样的特性可以控制线程执行任务的时机,使线程以“组团”的方式一起执行任务。类CountDownLatch所提供的功能是判断counti计数不为O时则当前线程呈wait状态,也就是在屏障处等待,该类的全部方法列表如图2-1所示。类CountDownLatch也是一个同步功能的辅助类,使用效果是给定一个计数,当使用这个CountDownLatch类的线程判断计数不为0时,则呈wait状态,如果为0时则继续运行。实现等待与继续运行的效果分别需要使用await()和countDown()方法来进行。调用await()方法时判断计数是否为0,如果不为0则呈等待状态。其他线程可以调用count-Down(0方法将计数减1,当计数减到为0时,呈等待的线程继续运行。而方法getCount()就是获得当前的计数个数。要说明的是,计数无法被重置,如果需要重置计数,请考虑使用Cyclic Barrier类。