Probably a bug
Aleksey Shipilev
shade at redhat.com
Wed Feb 19 12:29:03 UTC 2020
On 2/19/20 1:20 PM, Andrew Haley wrote:
> On 2/18/20 4:04 PM, Kirill A. Korinsky wrote:
>> The thread is looping inside do...while
>>
>> As soon as I replaced it `getObjectVolatile` and `putOrderedObject` to direct access to volatile nothing is changed.
>
> Good idea. Given that the published algorithm at
> http://www.1024cores.net/home/lock-free-algorithms/queues/non-intrusive-mpsc-node-based-queue
> specifies a releasing store when setting next, the use of
> putOrderedObject() here is very suspicious.
Unsafe.putOrderedObject is releasing store in Unsafe newspeak. You are probably confusing it with
opaque.
--
Thanks,
-Aleksey
More information about the shenandoah-dev
mailing list