JAVA并发编程培训测试题

感谢您能抽出几分钟时间来参加本次答题,现在我们就马上开始吧!

Q1:姓名

选项1

Q2:所属团队

选项1

Q3:以下表述按并发、并行、串行的排序,正确的是:T1:你吃饭吃到一半,电话来了,停下来接了电话,接完电话继续吃饭;T2:你吃饭吃到一半,电话来了,一直到吃完后再去接听;T3:你吃饭吃到一半,电话来了,一边打电话一边吃饭;

A: T1、T2、T3
B: T1、T3、T2
C: T2、T3、T1
D: T3、T1、T2
E: T2、T1、T3
F: 都不正确

Q4:同时访问synchronized的静态和非静态方法,能保证线程安全吗 ?( )为什么?( )

选项1

Q5:Java中启动线程的方式有几种?( )是哪几种?( )

选项1

Q6:以下关于java线程表述正确的是

A、start(   )方法是native方法;
B、start(   )方法负责启动线程;
C、run(   )方法是native方法;
D、run(   )方法负责启动线程;

Q7:以下关于守护线程描述正确的是

A、Finalizer是守护线程;
B、守护线程会占用更少的资源;
C、所有非守护线程结束后,JVM会退出;
D、负责GC的线程是守护线程;

Q8:以下对于线程优先级描述正确的是

A、java对线程优先级定义是1~10,数字越大优先级越高;
B、优先级高的线程一定会占用更多CPU资源;

Q9:对于以下程序代码:public class ExamSyn1 implements Runnable { int a = 0; synchronized void m1( ) throws InterruptedException { a = 1000; Thread.sleep(500); System.out.println(a= + a);}synchronized void m2( ) throws InterruptedException { Thread.sleep(250); a = 2000;}public static void main(String[ ] args) throws InterruptedException { ExamSyn1 tt = new ExamSyn1( ); Thread t = new Thread(tt); t.start( ); tt.m2( ); System.out.println(main a= + tt.a); Thread.sleep(2000);}@Overridepublic void run( ) { try { m1( ); } catch (InterruptedException e) { e.printStackTrace( ); } }}对于以下输出结果,正确的是( )main a= 结果1a= 结果2

A、结果1:2000
B、结果1:1000
C、结果1:1000或2000
D、结果2:2000
E、结果2:1000
F、结果2:1000或2000
问卷网
JAVA并发编程培训测试题
关于
1年前
更新
0
频次
9
题目数
分享