threadlocal作用

理解:通过thread创建局部变量,每个线程可以获得该变量的副本,再每个线程中操作该副本相互之间不产生影响。

解决:数据库连接

  • 常规一个线程连接一个数据库是没有问题的,但是在高并发的情况下,可能线程一关闭数据库连接,线程而打开数据库连接,导致,数据库操作不能正常运行。
  • 如果改成局部变量中,需要时连接数据库,不需要时就断开连接,会导致大量资源消耗。

so:采用threadlocal可以在每个线程中创建一个数据库连接的副本,该副本相互之间不影响,记录每次连接的状态,在线程结束后释放该资源,保证了每个线程安全独立的操作数据库。

posted @ 2018-10-04 12:11  思考的胖头鱼  阅读(420)  评论(0编辑  收藏  举报