juc学习-1.进程和线程

线程和进程
进程:一个程序,比如qq.exe 程序的集合
一个进程包含多个线程,至少包含一个线程

        java默认有几个线程? 2个  main和gc线程
  
  线程:Thread runnable callable
        
        java可以开启线程吗? 不可以 他通过start方法启动 调用底层本地方法start0 (native方法)

  并发和并行:
        并发:同一时间段内(很小) 本质:充分利用CPU资源
        并行:同一时刻

        获取cpu的核数:Runtime.getRuntime().availableProcessors()

  线程的几个状态?
        new  新建
        runable 运行
        blocked 阻塞
        waiting 等待 死死地等
        timed——waiting 超时等待
        terminated   终止
  
  wait和sleep的区别?
        ①来自不同的类:wait来自object类 sleep来自thread类
        ②有没有释放锁:wait会释放锁  sleep不会释放(抱着锁睡觉 不会释放)
        ③适用的范围不一样: wait要在同步代码块中使用     sleep可以在任何地方
posted @ 2021-01-21 18:16  进丁520  阅读(40)  评论(0)    收藏  举报