创建线程的两种方式:继承Thread类和实现runnable接口
runnable的代码可以被多个线程共享,适用与多个线程处理同一资源的情况。
start是创建并启动一个线程,而run是要运行线程中的代码。
线程的生命周期:
创建:new
就绪状态:start
运行状态:就绪状态中的线程获得cpu后就执行
终止:线程run完
阻塞:运行状态的让出cpu,就处于阻塞状态,sleep()解除后就进入初始状态
守护线程:运行在后台,为其他前台用户线程服务
Thread.setDaemon(true);设置成守护线程。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。