线程安全
介绍多线程中的有关线程安全的知识,包含线程安全问题、性能问题
线程安全
多线程运行时的时序不正确可能会带来运行结果错误、初始化线程导致的安全问题、活跃性问题。
- 运行结果问题:多线程运行时,共享的资源没有得到正确的处理导致结果错误
- 初始化线程导致的安全问题:线程执行时序错误,导致初始化错误
- 活跃性问题:多线程竞争导致死锁、活锁、饥饿等问题
线程性能
- 调度开销:线程上下文切换、缓存失效
- 协助开销:共享资源相互协助需要等待和刷新等等协助的操作会耗时
缓存失效指的是操作系统在读取一段数据时会预载磁盘分配上下节点的数据,当线程发生切换后,缓存失效