Android-线程

2020-08-24  本文已影响0人  有腹肌的豌豆Z

什么是线程?

线程的状态/生命周期

public enum State {
        /**
         * 尚未启动的线程的线程状态。 刚创建出来的线程 new Thread()
         */
        NEW,

        /**
         * (可运行/运行状态,等待CPU的调度)(要注意:即使是正在运行的线程,状态也是Runnable,而不是Running) 
         */
        RUNNABLE,

        /**
         * 等待监视器锁而被阻塞的线程的线程状态。运行被synchronized标记的代码且未获取到同步监视器。
         * 阻塞状态
         */
        BLOCKED,

        /**
         * 等待指定时间time threadA中调用threadB.join(time)。
         * obj.wait(time) 
         * sleep(time)。
         */
        TIMED_WAITING,

        /**
         * 线程终止,线程执行完成。
         */
        TERMINATED;
    }

停止线程

有时候我们可能需要强制中断 run() 方法的执行,怎么办呢?是使用 stop() 方法还是 interrupt() 方法呢?正确的姿势是调用 interrupt() 方法

线程状态函数

wait()

sleep()

notify()

allnotify()

join()

Synchronized()

Synchronized 同步

1、方法同步。
2、块同步。
上一篇下一篇

猜你喜欢

热点阅读