主要讨论5个问题:
1 线程的使用方式
这个不是重点,使用时就知道了。
多个线程在某个时间端上交替执行
通过线程的复制,可以执行不同的分支。
可以通过设定线程的优先级,来顺序执行。
可以通过timer和TimerCallBack获得线程动作结果,来判断线程是否执行完毕。
也可以在线程中创建线程。
2 线程生存周期
开始
挂起 恢复
睡眠 中断 超时
等待 中断 通知
参与 目标线程被调用
结束
3 何时使用线程?
后台访问耗时的外部资源
4 线程陷阱
顺序访问共同的非同步资源,最终结果不同。
解决方式:同步线程。
循环创建线程并执行线程。原因执行线程的时间很少。
解决方式:1 创建一个线程 2 使用线程池