基础概念:
-
线程不能独立于进程而存在,线程是操作系统任务调度的最小单元。
-
申请内存的时候是以进程为单位申请的
-
进程是操作系统分配资源的最小单元
并行和并发
并行 : N:N的关系, 两个队列各自访问自己的资源
并发 : N:1的关系, 强调单位时间内访问资源的吞吐量,比如一分钟内有4个线程使用了某个资源。
线程的两种创建方式: 继承Thread类和实现Runnable接口。
具体细节如下面代码所示:
public class TestJava {
private static class RunThread1 extends Thread {
@Override
public void run() {
super.run();
// TODO: 2022/04/07 do my work
System.out.println("通过继承Thread类方式实现线程");
}
}
private static class RunThread2 implements Runnable {
@Override
public void run() {
System.out.println("通过实现Runnable接口实现线程");
}
}
public static void main(String[] args) {
new RunThread1().start();
new Thread(new RunThread2()).start();
}
}