可以肯定地说ThreadLocal变量在概念上与Java中的volatile变量相反吗? 因为在前者中,每个线程只会读取/更新变量的本地副本。但是在后者中,每个线程总是会看到主内存中变量的最新值....没有机会看到陈旧的值。Threadlocal和volatile在概念上彼此相反
0
A
回答
0
究竟但有轻微的扭曲,
- 一个ThreadLocal变量是针对每个线程
- 任何其他变量只存在一次使用相同的对象中的每个线程,以便共同,无论是易失性的变量不同或不。
然而,易失性指定某种线程读/写边界,因此它们必须同步由任何其他线程写入的最新值。但是使用volatile不能确保线程安全。
E.g.递增易失性int的递增方法可能仍会生成重复项。为了确保工作线程安全,您必须同步更新volatile属性的方法!
检查此了解更多详细信息:https://www.cs.umd.edu/users/pugh/java/memoryModel/jsr-133-faq.html
相关问题
- 1. java中的volatile和threadLocal
- 2. Vue.js反应概念
- 3. 在游戏相对概念
- 4. 计算反演次数(概念上?)
- 5. WPF和MVC是相同的概念吗?
- 6. 在Tkinter中彼此相邻
- 7. LinearLayout彼此相邻
- 8. UITableViewCell彼此相邻
- 9. 从概念上讲什么是序列化和反序列化?
- 10. jdbctemplate概念和c#
- 11. jQuery和javascript - 概念
- 12. MPI和SLURM概念
- 13. 硒和c#概念
- 14. 概念API和ABI
- 15. SMTP和POP3概念?
- 16. 静态概念相当于通过参考概念
- 17. 概念:在Python
- 18. 概念在Java
- 19. 概念在JavaScript
- 20. chart.js之彼此反应
- 21. DTO和DAO概念和MVC
- 22. 概念
- 23. 概念
- 24. 概念
- 25. 在w3css上显示彼此相邻的表单和按钮
- 26. img标签和DIV彼此相邻
- 27. 使图像和段落彼此相邻
- 28. Golang UDP和TCP彼此相邻
- 29. Backbonejs视图绑定概念反馈
- 30. MVC实现概念(概念(ABAP SAP)
我不这么认为。它们只是不同的概念。 – johnchen902
“概念相反”对我来说似乎太过于极端的定义。但是你对TL和易失性行为的描述看起来很准确。 – pamphlet
你的描述看起来很准确,但如果我不知道什么线程局部变量和变量是,我不明白你在说什么。我真的希望你不是在教人们:p – akostadinov