Tim Brooks created KAFKA-2312: --------------------------------- Summary: Use AtomicLong opposed to AtomicReference to store currentThread in consumer Key: KAFKA-2312 URL: https://issues.apache.org/jira/browse/KAFKA-2312 Project: Kafka Issue Type: Improvement Components: clients Reporter: Tim Brooks Priority: Minor
When a thread id is returned by Thread.currentThread().getId() it is a primitive. Storing it in an AtomicReference requires boxing and additional indirection. An AtomicLong seems more natural to store a long. The current implementation relies on knowing that null means no owner. Since thread ids are always positive (specified in javadoc), it is possible to create a constant NO_CURRENT_THREAD for -1. Which allows the usage of an AtomicLong and makes the functionality explicit. -- This message was sent by Atlassian JIRA (v6.3.4#6332)