线程的状态
状态说明
a.新建
实例化线程对象
b.就绪
向线程对象发送start消息,线程对象被加入可调度线程池等待CPU调度;detach方法和performSelectorInBackGround方法会直接实例化一个线程对象并加入可调度线程池
c.运行
CPU负责调度可调度线程池中的任务执行
线程执行完之前,状态可能在就绪和运行之间来回切换
d.阻塞
当满足某个预定条件时可以,可以使用休眠或锁阻塞线程执行
sleepForTimeInterval:休眠指定时长
sleepUntilDate:休眠到指定日期
@synchronized(self):互斥锁
e.死亡
正常死亡:线程执行完毕
非正常死亡:当满足某个条件时,在线程内部终止执行;当满足某个条件时在主线程终止线程对象