A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

1.等待唤醒机制存在的意义是什么?
多个线程并发执行时CPU是随机切换线程,当多个线程完成一个任务,我们希望他们有规律的执行任务。这个时候需要等待唤醒机制以此来帮我们达到多线程共同操作一份数据。多个线程在处理同一个资源,并且任务不同时,需要线程通信来帮助解决线程之间对同一个变量的使用或操作。

2.调用wait()方法和notify()方法,需要注意什么?
(1)wait方法与notify方法必须要由同一个锁对象调用。因为:对应的锁对象可以通过notify唤醒使用同一个锁对象调用的wait方法后的线程
(2)wait方法与notify方法是属于Object类的方法。因为:锁对象可以是任意的对象,而任意对象的所属类都是继承了Object类。
(3)wait方法与notify方法必须要在同步代码块或者同步函数中使用。因为:必须要通过锁对象调用这2个方法

3.使用线程池来操作线程有什么好处?
(1).降低资源消耗。减少了创建和销毁线程的次数,每个工作线程都可以被重复利用,可执行多个任务。
(2)提高响应速度。当任务到达时,任务可以不需要的等到线程创建就能立即执行。
(3)提高线程的可管理性。可以根据系统的承受能力,调整线程池中工作线线程的数目,防止因为消耗过多的内
存。

4.传统的面向对象编码有什么弊端?
传统的面向对象编码过分强调“必须通过对象的形式来做事情”使为了达成某一个目的不得不调用那些方法重写方法,步奏过于繁杂

5.什么情况下可以使用lambda表达式来替换面向对象编码?
当具有接口并且接口中仅有一个抽象方法而且必须可以根据上下文推导得知信息。

6.什么情况下lambda表达式可以简写?
1.小括号内有且仅有一个参数,则小括号可以省略
2.大括号内有且仅有一个语句,则无论是否有返回值都可以省略大括号、return关键字和语句最后的分号。
3.前面的方法有返回值类型所以小括号内参数的类型可以省略不写。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马