[concurrency-interest] Concurrent Hash Map javadoc question
Martin Buchholz
martinrb at google.com
Wed Sep 18 02:19:39 UTC 2019
How about
The entire method invocation is performed atomically, so the function is
applied at most once per key.
=>
The entire method invocation is performed atomically. The function is
applied at most once per key.
On Tue, Sep 17, 2019 at 7:08 PM Benjamin Manes <ben.manes at gmail.com> wrote:
> All three state that "The entire method invocation is performed
> atomically" and computeIfAbsent merely explains this with the addition "so
> the function is applied at most once per key." Since all computations are
> atomic operations in ConcurrentHashMap, this seems to be implied in the
> other cases rather than explicitly clarified.
>
> On Tue, Sep 17, 2019 at 6:36 PM Martin Buchholz via Concurrency-interest <
> concurrency-interest at cs.oswego.edu> wrote:
>
>> I think this doc difference is intentional.
>>
>> In case of a retry loop, the value may have changed in the case of
>> computeIfPresent or compute and so the function must be called again with
>> the new value.
>>
>> On Tue, Sep 17, 2019 at 4:36 PM Martijn Verburg <martijnverburg at gmail.com>
>> wrote:
>>
>>> Hi Keith,
>>>
>>> I think this is one for concurrency interest to answer.
>>>
>>> Cheers,
>>> Martijn
>>>
>>>
>>> On Tue, 17 Sep 2019 at 12:48, Keith Turner <keith at deenlo.com> wrote:
>>>
>>> > The javadoc for ConcurrentHashMap.computeIfAbsent() states the
>>> > remapping function is applied at most once. The functions
>>> > computeIfPresent() and compute() do not explicitly state if the
>>> > remapping functions could possibly be run multiple times. Does anyone
>>> > know if computeIfPresent() and compute() are guaranteed to only run
>>> > the remapping functions at most once? If so, should the javadoc be
>>> > updated?
>>> >
>>> > Thanks,
>>> >
>>> > Keith
>>> >
>>>
>> _______________________________________________
>> Concurrency-interest mailing list
>> Concurrency-interest at cs.oswego.edu
>> http://cs.oswego.edu/mailman/listinfo/concurrency-interest
>>
>
More information about the discuss
mailing list