【发布时间】:2013-06-05 06:27:50
【问题描述】:
我正在研究图形(节点和顶点)分区算法。
我使用多个线程来尝试识别图中的某些区域。
一旦一个节点被识别为一个区域的一部分,我就为该节点对象设置一个boolean marked 为真。
多个线程可以尝试同时标记同一个节点。
目前我使用同步来确保不会发生任何不好的事情。
但是,自从我从未读取标记的值,直到所有线程都完成处理后。我可以摆脱同步代码吗?换句话说,当同时写入一个布尔变量时会出现什么问题吗?
【问题讨论】:
-
在设置为 true 时是否标记为 false?
-
不。只需设置为 true
标签: java concurrency