Java-多线程
首先我们的知道一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。
线程的六种状态如图所示:
线程也有优先级的划分,高优先级抢到系统资源(有的成为时间片)的概率会更大一些,就会更容易被执行。范围Java 线程的优先级是一个整数,其取值范围是 1 (Thread.MIN_PRIORITY ) - 10 (Thread.MAX_PRIORITY )。默认情况下,每一个线程都会分配一个优先级 NORM_PRIORITY(5)。
Java 提供了三种创建线程的方法:
-
通过实现 Runnable 接口
-
通过继承 Thread 类本身
-
通过 Callable 和 Future 创建线程
在多线程编程时,你需要了解以下几个概念:
- 线程同步
- 线程间通信
- 线程死锁
- 线程控制:挂起、停止和恢复