深入并发原理和大厂面试(四):一线大厂问什么

具体题目:

1、以下关于进程和线程描述正确的是?

A:线程是程序运行资源分配的最小单位
B:进程是 CPU 调度的最小单位
C:线程可以单独存在
D:在 Java 程序中,线程无处不在

2、关于高并发编程描述错误的是:

A:多线程可以充分利用 CPU 的资源。
B:并发编程时一个应用里可以开启任意多的线程。
C:死锁是并发编程里需要注意的线程安全问题之一。
D:使用得当,并发编程加快响应用户的时间。

3、以下关于 Thread 和 Runnable 的描述中,那个是错误的?

A:Thread 是 Java 里对线程的抽象
B:Runnable 是 Java 里对线程的抽象
C:Runnable 是对任务(业务逻辑)的抽象。
D:Thread 可以接受任意一个 Runnable 的实例并执行

4、关于调用 Thread 中的 start 方法和 run 方法以下说法不正确的是?

A:调用两个方法没有任何区别
B:调用 start()方法时你将创建新的线程,并且执行在 run()方法里的代码。
C:直接调用 run()方法,它不会创建新的线程也不会执行调用线程的代码
D:直接调用 run()方法,只会把 run 方法当作普通方法去执行

5、你如何确保 main()方法所在的线程是 Java 程序最后结束的线程?

A:没有任何办法可以做到这一点
B:使用 Thread 类的 join()方法。
C:使用 Sermaphore 工具类。
D:在 main 方法中最先启动子线程就行了,JVM 会帮助我们做到这一点的。

6、下面关于守护线程描述不正确的是?

A:守护线程是一种支持型线程,它主要被用作程序中后台调度以及支持性工作。
B:当一个 Java 虚拟机中不存在非守护线程的时候,Java 虚拟机就会退出。
C:垃圾回收线程是非守护线程。
D:可以通过调用 Thread.setDaemon(true)将线程设置为守护线程。

7、以下 synchronize 描述错误的是?

A:synchronized 可以修饰方法。
B:synchronized 可以修饰代码块。
C:synchronized 可以确保多个线程在同一个时刻,只能有一个线程处于方法或
者同步块中。
D:synchronized 可以被称为显式锁。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值