【面向面试学习】如何写出线程安全的程序?

177 阅读1分钟
  • 使用synchronized根据具体情况对指定类、方法或代码块做同步
  • 使用锁,对可能发生多线程操作的地方加锁
  • 使用ThreadLocal保存一些仅在当前线程使用的数据,从而避免多线程操作的干扰
  • 使用Jdk提供的concurrent包提供的各种线程安全类去实现自己的需求
  • 如果可能的话尽量在单线程里实现指定功能,避免不必要的多线程