栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java练习题---线程

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java练习题---线程

解析: synchronized 关键字 : 用来给对象和方法或者代码块加锁,当它锁定一个方法或者一个代码块的时候,同一时刻最多只有一个线程执行这个段代码。
2.
解析:  一个线程执行的过程有三个阶段:
加载(复制)主存数据到操作栈 --> 对操作栈数据进行修改 --> 将操作栈数据写回主存
volatite关键字,让编译器不去优化代码使用缓存等,以保证线程在“加载数据阶段”加载的数据都是最新的
3.
解析: 同步器是一些使线程能够等待另一个线程的对象,允许它们协调动作。最常用的同步器是CountDownLatch和Semaphore,不常用的是Barrier 和Exchanger

4.

解析: Java多线程实现方式主要有四种:继承Thread类、实现Runnable接口、实现Callable接口通过FutureTask包装器来创建Thread线程、使用ExecutorService、Callable、Future实现有返回结果的多线程。

5.

解析: A. 调用sleep()方让线程进入睡眠状态—睡眠指定的时间后再次执行;
   B. 调用wait()方让线程进入等待状态 ----等待别的线程执行notify()或notifyAll()唤醒后继续执行;
   C.调用start()方让线程进入就绪状态—得到CPU时间就执行线程;
   D.run()方法是线程的具体逻辑方法,执行完,线程就结束

6.

解析: 
B选项,在java中线程是有分优先等级的所以优先级不能相同
C选项,Thread实现了Runnable接口是一个类不是接口
D选项, 实现线程的方式有:
继承Thread类,重现run()方法;
实现Runable接口,实现run()方法;
实现Callable接口,线程结束后有返回值。
7.

解析: 
A.由于y的值不确定,所以要加锁;
B,C 两个在多线程情况下是必须要加锁的,因为他们是先被读入寄存器,然后再进行+1操作,如果没有加锁,那么可能会出现数据异常;
D 原子操作,所以不需要加锁
原子性:指该操作不能再继续划分为更小的操作。
Java中的原子操作包括:
1、除long和double之外的基本类型的赋值操作
2、所有引用reference的赋值操作
3、java.concurrent.Atomic.* 包中所有类的一切操作
8.

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/322449.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号