设计4 个线程,其中两个线程每次对j 增加1,另外两
个线程对j每次减少1。写出程序。
以下程序使用内部类实现线程,对j 增减的时候没有考虑顺序问题。
public class ThreadTest1
{
private int j;
public static void main(String args[]){
ThreadTest1 tt=new ThreadTest1();
Inc inc=tt.new Inc();
Dec dec=tt.new Dec();
for(int i=0;i<2;i++){
Thread t=new Thread(inc);
t.start();
t=new Thread(dec);
t.start();
}
}
private synchronized void inc(){
j++;
System.out.println(Thread.currentThread().getName()+"-inc:"+j);
}
private synchronized void dec(){
j--;
System.out.println(Thread.currentThread().getName()+"-dec:"+j);
}
class Inc implements Runnable{
public void run(){
for(int i=0;i<100;i++){
inc();
}
}
}
class Dec implements Runnable{
public void run(){
for(int i=0;i<100;i++){
dec();
}
}
}
}
第1题:
下述是关于进程和线程的说法:
①在传统的OS中,进程是系统分配资源和进行调度的基本单位。而线程则是系统分配资源的基本单位。
②进程就是线程。
③线程可以创建另外一个线程,同一个进程中的多个线程可以并发执行。线程也有就绪、运行和阻塞三种基本状态。
其中正确的个数为______。
A.0
B.1
C.2
D.3
第2题:
设计4 个线程,其中两个线程每次对j 增加1,另外两
个线程对j每次减少1。写出程序。
以下程序使用内部类实现线程,对j 增减的时候没有考虑顺序问题。
public class ThreadTest1
{
private int j;
public static void main(String args[]){
ThreadTest1 tt=new ThreadTest1();
Inc inc=tt.new Inc();
Dec dec=tt.new Dec();
for(int i=0;i<2;i++){
Thread t=new Thread(inc);
t.start();
t=new Thread(dec);
t.start();
}
}
private synchronized void inc(){
j++;
System.out.println(Thread.currentThread().getName()+"-inc:"+j);
}
private synchronized void dec(){
j--;
System.out.println(Thread.currentThread().getName()+"-dec:"+j);
}
class Inc implements Runnable{
public void run(){
for(int i=0;i<100;i++){
inc();
}
}
}
class Dec implements Runnable{
public void run(){
for(int i=0;i<100;i++){
dec();
}
}
}
}
第3题:
关于线程,下列叙述正确的是______。
A.线程本身也是一个程序,它自己能独立运行
B.多个线程中,每一个线程都有自己独立的一块内存空间、一组系统资源
C.线程就是一个程序内部的顺序控制流
D.多线程就是多次启动一个程序
第4题:
下列说法中,错误的一项是______。
A.一个线程组中可以包含若干线程
B.一个Java应用程序启动时,Java运行系统为该程序创建一个名为main的线程
C.一个线程组中不可以再包含线程组
D.一个Java应用程序的最顶层线程组是main
第5题:
第6题:
现代操作系统均采用了线程技术,采用线程技术()
第7题:
超线程技术是利用特殊的硬件指令,把两个逻辑内核模拟成两个物理芯片,让个别处理器都能使用线程级并行计算,从而兼容多线程操作系统和软件,提高处理器的性能
第8题:
程序的创建有哪几步()。
第9题:
举两个多线程程序设计的例子,其中多线程的性能比单线程的性能差。
第10题:
下列关于超线程技术说法错误的是()
第11题:
第12题:
在主程序中创建线程对象;
调用线程对象的start函数来启动线程;
在Windows中注册一个现成;
由Thread类派生出一个线程类;
第13题:
下列程序的运行结果是______。 class A implements Runnable { int a; iht i = 2; A(int x) { a = x; } public void run() { while(i > 0) { System.out.println("线程" + a); i--; } } } public class Testl3 { public static void main(String[] args) { Thread a1 = new Thread(new A(1)); Thread a2 = new Thread(new A(2)); a1.start(); a2.start(); } }
A.线程1 线程1 线程2 线程2
B.线程1 线程2
C.线程1 线程2 线程1 线程2
D.线程1 线程1 线程1 线程1
第14题:
在创建线程时可以显式地指定线程组,此时可供选择的线程构造方法有( )种。
A.1
B.2
C.3
D.4
第15题:
设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。以下程序使用内部类实现线程,对j增减的时候没有考虑顺序问题。
第16题:
A.超线程技术的CPU在功能上与双核CPU相似
B.超线程技术就是利用特殊的硬件指令,把两个逻辑内核拟成物理芯片
C.超线程技术是让单个处理器能使用线程级并行计算,从而兼容多线程并行计算
D.只要CPU支持超线程技术就能发挥超线程的性能,与其它硬件和软件无关
第17题:
下面有关超线程技术叙述正确的有()。
第18题:
以下多线程程序的设计步骤,其中错误的是()
第19题:
Java程序运行时,至少启动两个线程,分别是()、()
第20题:
在java程序中,下列关于线程的说法错误的是()
第21题:
实用的网络程序最少需要几个线程?()
第22题:
为应用程序开发人员上班Certkiller.com。 您需要修改应用程序的代码。 应用程序使用两个线程命名线程A和线程B.要完成执行之前线程开始执行线程B。 您将如何完成这项任务?()
第23题:
第24题:
对
错