RFR(XS): 8147844: new method j.l.Thread.onSpinWait() (was j.l.Runtime)

Vitaly Davidovich vitalyd at gmail.com
Thu Mar 10 02:12:36 UTC 2016


I thought it was there to prevent loads after the call from moving before
it, such as when loop is unrolled.  That type of motion would defeat (some
of) the purpose.

But ok, your call.  The javadoc is a bit vacuous (purposely) so wasn't sure
if mentioning ordering is appropriate or not, even if to say it's
unspecified.

On Wednesday, March 9, 2016, Ivan Krylov <ivan at azulsystems.com> wrote:

> To me this is an implementation detail that could change. The barrier is
> there to prevent the intrinsic to be hoisted.
>
> Thanks,
> Ivan
>
>
>
> On 09/03/2016 17:50, Vitaly Davidovich wrote:
>
> Is it worthwhile to mention ordering effects? In particular, I believe
> there's a compiler barrier preventing moving ops before the call.  Not sure
> if this needs any attention in the javadoc.
>
> On Wednesday, March 9, 2016, Ivan Krylov <
> <javascript:_e(%7B%7D,'cvml','ivan at azulsystems.com');>ivan at azulsystems.com
> <javascript:_e(%7B%7D,'cvml','ivan at azulsystems.com');>> wrote:
>
>> I have added a little example that hopefully explains for the new method
>> is for
>>
>> JavaDoc:
>> http://cr.openjdk.java.net/~ikrylov/8147844.doc.00/java/lang/Thread.html#onSpinWait--
>> I replaced the webrev in place:
>> http://cr.openjdk.java.net/~ikrylov/8147844.jdk.03
>>
>> Thanks,
>>
>> Ivan
>>
>>
>> On 07/03/2016 17:40, David Holmes wrote:
>>
>>> Hi Ivan,
>>>
>>> On 8/03/2016 11:04 AM, Ivan Krylov wrote:
>>>
>>>> The current wording of what is being called now JEP-285 [1] has placed
>>>> onSpinWait() method into j.l.Thread.
>>>> Hence, a new revision of the webrev. Everything is the same, except now
>>>> it is the Thread class.
>>>>
>>>> http://cr.openjdk.java.net/~ikrylov/8147844.jdk.03/
>>>>
>>>
>>> Make sure the commit comment reflects the new synopsis :)
>>>
>>> I thought at some point there was discussion of giving a usage example
>>> in the javadoc? I think most people would be quite puzzled after reading
>>> the technical spec alone.
>>>
>>> Thanks,
>>> David
>>>
>>> Please, approve.
>>>>
>>>> Thanks,
>>>>
>>>> Ivan
>>>>
>>>> [1] - openjdk.java.net/jeps/285
>>>>
>>>> On 27/01/2016 09:53, Ivan Krylov wrote:
>>>>
>>>>> Updated to http://cr.openjdk.java.net/~ikrylov/8147844.jdk.02/
>>>>> The sample JavaDoc has been updated too:
>>>>>
>>>>> http://ivankrylov.github.io/onspinwait/api/java/lang/Runtime.html#onSpinWait--
>>>>>
>>>>>
>>>>> Alan, Thank you.
>>>>>
>>>>> On 27/01/2016 18:20, Alan Bateman wrote:
>>>>>
>>>>>>
>>>>>>
>>>>>> On 27/01/2016 14:10, Ivan Krylov wrote:
>>>>>>
>>>>>>> Indeed, thanks!
>>>>>>> New webrev http://cr.openjdk.java.net/~ikrylov/8147844.jdk.01/
>>>>>>>
>>>>>>> Can you add @since 9 too?
>>>>>>
>>>>>> -Alan.
>>>>>>
>>>>>
>>>>>
>>>>
>>
>
> --
> Sent from my phone
>
>
>

-- 
Sent from my phone



More information about the core-libs-dev mailing list