2009-07-14 10 views
7

저는 EventMachine을 처음 접했으므로 이것이 무엇을 의미하는지 모르겠습니다. 이 예외가 발생합니다 :EventMachine :: ConnectionNotBound의 원인은 무엇입니까?

EventMachine::ConnectionNotBound recieved ConnectionUnbound for an unknown signature: ef93a97d4d6441cb80d30fe2313d7de73 

프로그램이 상당히 복잡하므로 프로그램을 구성하는 데 도움이 될 수있는 모든 것을 설명 할 수 없습니다. 내가 필요한 것은 무엇을 찾을지를 가리키는 포인터입니다. 이 오류는 문서화되어 있지 않습니다 (http://eventmachine.rubyforge.org/ 참조).

답변

8

EventMachine :: Connection의 하위 클래스의 initialize 메서드에서 처리되지 않은 다른 예외가 발생할 때이 예외가 발생했습니다. 서브 클래스 초기화 메소드가 올바르다는 것과 initialize 메소드가 에러없이 실행되고 있는지 확인하십시오.

6

일반적으로 이러한 오류는 초기화 또는 post_init에서 발생합니다. 가장 먼저해야 할 일은 콜백 내에 구조를 추가하여 실제로 그 오류의 원인을 찾아내는 것입니다.

def initialize(*args) 
    ... 
    super 
rescue Exception 
    ... 
end 

def post_init 
    ... 
    super 
rescue Exception 
    ... 
end 
+0

이것은 훌륭한 충고이며 삽화에 감사하지만'# initialize '의 설정이 잘못된 Troy의 시나리오를 포착하지 않습니다. 그게 내 문제 였어. (실제로, 나는 연결이 아니라 전화를하고있었습니다.) 아마도 같은 질문을 가진 다른 누군가에게 좋은 대답 일 것입니다. :) – Peeja

1

1 년 전 EventMachine에서이 사례에 대한 예외 버블 링이 수정되었습니다. 시험판 1.0 gem (gem install eventmachine --pre) 이상인 경우 저장소의 EventMachine을 사용하십시오.

관련 문제