recover (1) 썸네일형 리스트형 [golang] defer, panic, recover golang에는 try~ catch역할을 할 수 있는 기능을 defer, panic, recover type으로 제공한다. 1. defer defer는 함수의 마지막에 호출할 수 있도록 stack에 해당 라인을 추가한다. (stack으로 추가되니 여러개의 defer가 있는 경우 LIFO(Last In First Out)으로 실행) 예를 들어 file 입출력을 할 때, file Open 이후 바로 defer close() 와 같이 선언하여 함수 종료 후 file을 close 할 수 있게된다. 만약 함수 실행 중 에러로 인해 비정상 종료되는 경우에도 defer 실행 후 종료되는데, 이 때 발생한 에러보다 이전에 defer가 수행되어 있어야 한다. 2. panic go 프로그램 실행 도중 에러로 인해 프로그램.. 이전 1 다음