1.一个单 CPU 的机器,如何同时执行多个线程?请简述其原理。
单CPU中进程只能是并发,多CPU计算机中进程可以并行。
单CPU单核中线程只能并发,单CPU多核中线程可以并行
无论是并发还是并行,使用者来看,看到的是多进程,多线程。
2. (线程的创建)有以下代码
B
3. (线程的创建)有以下代码
C
4.(sleep 方法)有如下代码
A
5. (线程的创建)创建两个线程,要求如下:
I. 一个线程输出 100 个 1~26,另一个线程输出 100 个 A~Z
II. 一个线程使用继承 Thread 类的写法,另一个线程使用实现 Runnable 接口的写法。
输出100个1~26:
public class ThreadOut {
public static void main(String[] args) {
Thread1 t = new Thread1();
t.start();
}}
class Thread1 extends Thread {
public void run() {
for (int i = 0;
i < 100; i++) {
for (int j = 1;
j <= 26; j++) {
System.out.println(j);
}
}
}
}
输出100个A~Z:
public class ThreadOut {
public static void main(String[] args) {
Thread2 t2 = new Thread2();
Thread t = new Thread(t2);
t.start();
}}
class Thread2 implements Runnable {
public void run() {
for (int i = 0; i < 100; i++) {
for (int j = 0; j <= 25; j++) {
System.out.println((char)(j+65));
}
}
}
}
- (线程的同步)有如下代码
同步块, 只允许一个线程进行访问内部代码,
如果不加的话, 运行程序将交互进行
7. (线程同步)有如下代码
.
C