gpt4 book ai didi

java - 线程安全和线程兼容有什么区别?

转载 作者:搜寻专家 更新时间:2023-11-01 03:15:56 26 4
gpt4 key购买 nike

线程安全和线程兼容有什么区别?

  • 线程兼容是什么意思?
  • 线程兼容的用例是什么?

更新:我在 grpc documentation of StreamObserver 中找到了这个定义.

此外,我还找到了 Characterizing thread safety 的链接但我还是不清楚。

如果一个方法需要在同步块(synchronized block)中,那意味着它只是线程不安全?

最佳答案

线程安全是指一个对象可以被多个线程并发使用并且仍然是正确的1

Thread hostile 意味着对象做了一些事情(改变静态、线程本地存储等)阻止它成为线程安全的。

线程兼容意味着不是线程安全,但不是线程敌对 - 所以为了满足线程安全,用户必须自己执行同步


1 但正确性的定义略有不同...

Java In Theory And In Practice根据类的规范定义它。

Geoff Romer at Google和维基百科将此定义为只是缺乏数据竞争。

我通常希望这意味着没有崩溃、死锁或其他意外。

关于java - 线程安全和线程兼容有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52714494/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com