10장. 오류 처리
AMQ C++의 오류는 다음 두 가지 방법으로 처리할 수 있습니다.
- 예외 catch
- AMQP 프로토콜 또는 연결 오류를 가로채기 위해 이벤트 처리 함수 덮어쓰기
예외를 캡처하는 것이 가장 기본이지만 오류를 처리하는 가장 세분화된 방법입니다. 처리기 함수에서 재정의를 사용하여 오류를 처리하지 않으면 예외가 발생합니다.
10.1. 예외 catch 링크 복사링크가 클립보드에 복사되었습니다!
링크 복사링크가 클립보드에 복사되었습니다!
이벤트 처리 함수에서 재정의를 사용하여 오류를 처리하지 않으면 컨테이너의 run 메서드에서 예외가 발생합니다.
AMQ C++가 proton::error 클래스에서 상속하는 모든 예외는 std:: runtime_error 및 클래스에서 상속됩니다.
std::exception
다음 예제에서는 AMQ C++에서 throw된 모든 예외를 catch하는 방법을 보여줍니다.
예: API별 예외 처리
try {
// Something that might throw an exception
} catch (proton::error& e) {
// Handle Proton-specific problems here
} catch (std::exception& e) {
// Handle more general problems here
}
API별 예외 처리가 필요하지 않은 경우 proton::error 가 상속되므로 std::exception 만 있으면 됩니다.