【发布时间】:2023-02-22 20:24:39
【问题描述】:
问题是 main 末尾的 count 的值是多少。 测试中的答案在 10 到 20 之间。 但是 count 不是 Atomic 并且 Counter 不是同步的,所以输出范围 实际上应该是 2 到 20?
我描述的运行示例,
Thread A read 0.(count = 0)
Thread B read and write 0 to 9.(count = 9)
Thread A write 1.(count = 1)
Thread B read 1.(count = 1)
Thread A read and write 1 to 10.(count = 10)
Thread B write 2.(count = 2)
【问题讨论】:
标签: java multithreading correctness