5 |
|
*/ |
6 |
|
|
7 |
|
package jsr166e; |
8 |
+ |
|
9 |
|
import jsr166e.LongAdder; |
10 |
|
import java.util.Map; |
11 |
|
import java.util.Set; |
19 |
|
* explicitly using method {@link #install}. |
20 |
|
* |
21 |
|
* <p><em>jsr166e note: This class is targeted to be placed in |
22 |
< |
* java.util.concurrent.atomic<em> |
22 |
> |
* java.util.concurrent.atomic.</em> |
23 |
|
* |
24 |
|
* @since 1.8 |
25 |
|
* @author Doug Lea |
32 |
|
private final ConcurrentHashMapV8<K, LongAdder> map; |
33 |
|
|
34 |
|
static final class CreateAdder |
35 |
< |
implements ConcurrentHashMapV8.MappingFunction<Object, LongAdder> { |
36 |
< |
public LongAdder map(Object unused) { return new LongAdder(); } |
35 |
> |
implements ConcurrentHashMapV8.Fun<Object, LongAdder> { |
36 |
> |
public LongAdder apply(Object unused) { return new LongAdder(); } |
37 |
|
} |
38 |
|
|
39 |
|
private static final CreateAdder createAdder = new CreateAdder(); |