작성자 없음
작성자 정보가 삭제된 글입니다.
작성
·
449
0
안녕하세요. 쓰레드 순서에 관해서 궁금증이 있습니다.
강의에서는 sleep()이 crud() 마지막에 위치해 있습니다. 그러나 이 때 sleep()을 crud() 맨 앞으로 위치시키면 MyPool 로그가 찍히지 않고 끝나버립니다.
제 생각엔 sleep 1초를 뒤가 아닌 앞에 위치시키면
메인 쓰레드가 멈춤
히카리 쓰레드가 먼저 커넥션을 10개 생성
메인 쓰레드 sleep이 끝나서, 선택할 커넥션 10개가 있는 상태로 crud() 함수 실행
이렇게 동작할 거라고 생각했는데 결과가 달라서 당황스럽습니다.
제가 아직 쓰레드 프로그래밍에 익숙치 않아서 잘 모르는 부분이 많습니다. 감사합니다.
답변 2
3
0
repository.save(member);
try {
Thread.sleep(3000);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
//findById
Member findMember = repository.findById(member.getMemberId());
try 문을 도중에 삽입하면 이렇게 됩니다.
16:44:35.850 [main] DEBUG com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Added connection conn0: url=jdbc:h2:tcp://localhost/./db user=SA
16:44:35.852 [main] INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed.
16:44:35.855 [main] INFO gukjin.jdbc.repository.MemberRepositoryV1 - get connection = HikariProxyConnection@1880078449 wrapping conn0: url=jdbc:h2:tcp://localhost/./db user=SA, class = class com.zaxxer.hikari.pool.HikariProxyConnection
16:44:35.961 [HikariPool-1 housekeeper] DEBUG com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Pool stats (total=1, active=0, idle=1, waiting=0)
16:44:35.963 [HikariPool-1 connection adder] DEBUG com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Added connection conn1: url=jdbc:h2:tcp://localhost/./db user=SA
... // 10개 생성
16:44:35.977 [HikariPool-1 connection adder] DEBUG com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - After adding stats (total=10, active=0, idle=10, waiting=0)
16:44:38.877 [main] INFO gukjin.jdbc.repository.MemberRepositoryV1 - get connection = HikariProxyConnection@231311211 wrapping conn0: url=jdbc:h2:tcp://localhost/./db user=SA, class = class com.zaxxer.hikari.pool.HikariProxyConnection
최초 사용과 관련이 있을까요?
별거 아닌거지만 너무 궁금했었는데 감사합니다!