进程与线程 main函数就是主线程 创建线程的方法 方法1:继承thread 线程开启不一定立即执行,由cpu调度执行 相关代码 下载文件例子 创建线程的方法2:实现runnable接口 相关代码 小结 创建线程方法3:实现callable lamda表达式,jdk8新增 线程状态 停止线程 线程休眠 线程强制执行可以想象成插队 线程状态 线程优先级:先设置再启动 守护线程 线程分为 用户线程(例如:main;虚拟机必须确保用户线程执行完毕) 和守护线程(例如:gc;虚拟机不用等待守护线程执行完毕) - 死锁 避免死锁 线程池