저는 ACE 전문가가 아닙니다. 그러나 ACE_Event_Handler 클래스의 기본 구현은 매번 오류를 반환하는 것으로 보입니다. ACE 소스 코드에서 추출 :
ACE_HANDLE
ACE_Event_Handler::get_handle (void) const
{
ACE_TRACE ("ACE_Event_Handler::get_handle");
return ACE_INVALID_HANDLE;
}
파생 클래스는 자체적으로 구현해야합니다.
ACE_HANDLE DerivedClass::get_handle(void) const
{
return peer().get_handle();
}
내가
- 에 당신을 추천 할 것입니다 당신이 당신의 유래에서 그 방법을 제공하는 확인 클래스는 클래스 ACE_Event_Handler에서 파생 따라서 당신은 의미있는 결과를하기 위해
get_handle()
메소드를 오버라이드 (override) 할 필요 수업.
- 그렇다면 구현을 다시 확인하십시오. 우리 문제는 여기에 있습니다. (구현에 대한 자세한 내용을 알려주십시오.)
- 재정의를 제공하지 않았다면이를 구현해야한다는 것을 알고 있습니다.
많은 파일 설명자를 열어야하기 때문에 regitor_handle이 실패 함을 알게되었습니다. 에이스를 다시 컴파일하지 않고 에이스가 지원하는 파일 디스크립터의 수를 늘릴 수있는 방법이 있습니까? – Shay
운영체제 문제라고 생각합니다. 어떤 OS를 사용하고 있습니까? Win32? 리눅스? –
Linux. 제한이 1024 인 것을보고 있지만 그것을 늘리고 싶습니다 – Shay