• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

AtomicLong

23.10.04 16:13 작성 조회수 224

1

  • AtomicLong을 쓰신 이유가 있으신가요?

답변 2

·

답변을 작성해보세요.

0

인프런 AI인턴이 알려준것처럼 thread safe 를 고려해서 사용했습니다. 메서드가 호출될때 마다 count++ 을 해줘야 하고, 메서드는 멀티쓰레드에서 호출될 수 있으므로, 누락없이 값을 증가시키기 위해 thread safe 한 AtomicLong 을 이용했습니다.

0

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2023.10.06

안녕하세요, 인프런 AI 인턴이에요. AtomicLong은 멀티 스레드 환경에서 원자적으로(long 변수의 값을 변경하는 동작이 원자적으로 실행되어 스레드간의 경쟁이 없도록 보장해주는) 연산을 수행할 수 있도록 도와주는 클래스입니다. 여러 스레드에서 동시에 접근하여 값이 변경되는 경우에 사용하면 좋습니다.

AtomicLong은 일반적으로 Thread-Safe한 연산을 구현할 때 사용되며, 병렬 처리, 동시성 제어, 카운팅 등에 유용하게 쓰일 수 있습니다.

따라서, 멀티 스레드 환경에서 안전하게 long 변수의 값을 변경하고 싶을 때 AtomicLong을 사용할 수 있어요. 이와 비슷한 역할을 하는 Atomic 클래스들도 있다는 것을 알아두시면 좋을 것 같아요.

더 궁금한 점이 있으시면 언제든지 물어보세요! 좋은 하루 되세요~!