C/C++教程

【金秋打卡】第21天 ThreadLocal

本文主要是介绍【金秋打卡】第21天 ThreadLocal,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

课程信息:

- 课程名称:ThreadLocal

- 章节名称:第一章 论线程的安全性

- 讲师姓名:求老仙


课程内容:

 1. 一致性问题

  • 发生在多个主体对同一份数据无法达成共识

  • 包括:分布式一致性问题,并发问题等等

  • 特点:场景多,问题复杂,难以察觉--需要严密的逻辑思考甚至数学论证

  • 排队:(例如:锁、互斥量、管程、屏障等)

  • 投票:(例如:Paxos,Raft等)

  • 避免:(例如:Threadlocal)

2. ThreadLocal是什么

  • 定义:提供线程局部变量;一个线程局部变量在多个线程中,分别有独立的值(副本)

  • 特点:简单(开箱即用)、快速(无额外开销)、安全(线程安全)

  • 场景:多线程场景(资源持有,线程一致性、并发计算、线程安全等场景)

  • 实现原理:Java中用哈希表来实现。

  • 应用范围:几乎所有提供多线程特征的语言。

https://img4.sycdn.imooc.com/636e7af2000115fc11570648.jpg

3. 总结:

  • 设计者追求开箱即用的体验

学习心得:

本节课我对于ThreadLocal有了一个简单的认识,了解了线程的安全性,一致性等等问题;这是一个必不可少的模块。收获非常大。

课程截图:

https://img1.sycdn.imooc.com/636e54800001d94211580695.jpg

https://img3.sycdn.imooc.com/636e7a730001afa811560651.jpg

这篇关于【金秋打卡】第21天 ThreadLocal的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!