目录
核心概念
-
在操作系统中运行的程序就是进程process
-
一个进程可以有多个线程Thread
-
线程就是独立的执行路径
-
程序运行时,即使没有自己创建线程,后台也会有多个线程,例如主线程main(),gc线程
-
对同一份资源操作时,会存在资源抢夺的问题,需要加入并非控制
-
线程会带来额外的开销,如CPU调度时间,并发控制开销
-
每个线程在自己的工作内存交互,内存控制不当会造成数据不一致
线程创建
两种方式:
-
Thread类
自定义线程类继承Thread类
重写run方法,编写线程执行体
创建线程对象,调用start方法启动线程. 注意:线程开始不一定立即执行,由CPU调度执行
public class ThreadDemo extends Thread{
public void run(){
for (int i = 0; i < 20; i++) {
System.out.println("我在学习多线程");
}
}
//主线程
public static void mai