1. ThreadLocalRandom 을 써야하는 이유
- Random 클래스는 멀티쓰레드 환경에서 하나의 Random 인스턴스를 공유하여 전역적으로 동작함.
-> 따라서, 같은 시간에 동시 요청이 들어오면 경합 상태에서 성능에 문제가 생길 수 있음.
- 동시성 문제를 해결하기 위해 각 쓰레드마다 생성된 인스턴스에서 각각 난수를 반환.
- Random과 같은 경합 문제가 발생하지 않아 안전하며, 성능상 이점이 있음.
2. 만드는 방법
ThreadLocalRandom random = ThreadLocalRandom.current();
long randomizedBarcode = random.nextLong(100_000_000, 999_999_999);
this.barcode = String.valueOf(randomizedBarcode);
'Java' 카테고리의 다른 글
[java] 자바 기초 (2) | 2024.01.10 |
---|