上下文: 我正在使用netty并定义了一个处理程序,以便对传入/传出流量进行计数和分类。为此,我使用了一个如下所示的enumMap:
EnumMap<MyEnum, AtomicLong>
但是现在我已经意识到只有一个线程正在操纵值(以前我认为它不止一个,netty似乎保证每个通道一个线程)。这意味着AtomicLong不是必需的。 然而,由于AtomicLong是原始long的包装器,而Long是一个不可变类型,我有理由认为只需将AtomicLong交换为Long就不会那么高。
有关于此的任何想法吗?
我可能应该做的是移动到int并删除整个enumMap事物..
BR 塞巴斯蒂安
答案 0 :(得分:3)
答案 1 :(得分:1)
我不能想象那个:
以计算和分类传入/传出流量
从AtomicLong
到Long
(或long
)的转化会对您的表现产生任何影响。
答案 2 :(得分:0)
我们在同一事项上使用LongAdder;)