JUC是什么?
java.util.concurrent在并发编程中使用的工具类
进程和线程
进程: 一个程序QQ.exe 等程序集合
线程: 比如某一个读写保存功能
Java真的可以开启线程么? :不可以,开启的线程其实是从本地方法去调用c++
并发和并行
并发(多线程操作同一资源):单核CPU,模拟多条程序快速交替
并行(多个人同时执行):多核CPU,多个线程同时执行,线程池
public static void main(String[] args) {
//获取CPU的核数
//CPU密集型 IO密集型
System.out.println(Runtime.getRuntime().availableProcessors());
}
并发变成的本质:充分利用CPU的资源
线程状态(六个)
public enum State {
/**
* 新生
*/
NEW,
/**
* 运行
*/
RUNNABLE,
/**
* 阻塞
*/
BLOCKED,
/**
* 等待
*/
WAITING,
/**
* 超时等待
*/
TIMED_WAITING,
/**
* 终止
*/
TERMINATED;
}