-
카테고리
-
세부 분야
백엔드
-
해결 여부
미해결
init, close는 어떻게 동작하길래 콜백메소드라고 하는가요?
22.05.13 13:18 작성 조회수 262
0
콜백함수는 callee가 caller를 호출하는 것으로 알고 있습니다. init, close 같은 경우 내부적으로 어떻게 동작하길래 콜백메소드라고 부를 수 있는 건가요?
어디서 누가 init 과 close를 가지고 갔다가 호출하는건가요? 함수가 어디에서 어디로 넘어가는건지도 궁금합니다.
답변을 작성해보세요.
2
David
2022.05.14
안녕하세요. taeu kim님, 공식 서포터즈 David입니다.
아래는 콜백, 콜백 함수의 정의입니다. 참고해주세요.
https://en.wikipedia.org/wiki/Callback_(computer_programming)
스프링의 경우 스프링 빈을 초기화할 때 빈의 메타정보도 함께 넘깁니다.
스프링 빈 초기화가 끝나면 함께 넘겨준 빈의 메타정보에서 init 메서드명을 가져와 호출하게 됩니다.
즉, 빈의 메타정보에는 초기화가 끝난 후 '콜백'되어야 할 init 메서드명을 갖고 있습니다.
따라서, init과 close를 콜백 메서드라고 부르는 것입니다.
자세한 동작은 AbstractAutowireCapableBeanFactory.initializeBean 메서드를 참고해주세요.
감사합니다.
답변 1