웹 서비스에 대한 여러 클라이언트 동시 액세스를 허용하고 클라이언트가 요청을하도록 허용하고 데이터를 사용할 수있을 때까지 차단합니다. gsoap이 알림을 지원하지 않기 때문에 이렇게합니다.gsoap을 사용하는 여러 동시 클라이언트
내 webservice 클래스는 WITH_PURE_VIRTAL로 컴파일됩니다. 즉, 추상 클래스이므로 인스턴스를 만들 수 없습니다. 따라서 저는 webservice 클래스를 상속받은 저에 의해 만들어진 하나의 클래스를 사용하고 webservice 및 webclient 요청을 관리합니다.
그러나 내 클래스가 기존 클라이언트를 처리하는 중일 때 다른 요청을받을 수 없습니다.
본인은이 비슷한으로 스레드를 실행한다 (here) : 나는하지 않습니다 전화 서비스를 제공하는 대신 내 웹 서비스 클래스를 호출하는 코드를 수정할 때, 그러나
soap_serve((struct soap*)soap);
soap_destroy((struct soap*)soap); // dealloc C++ data
soap_end((struct soap*)soap); // dealloc data and clean up
soap_done((struct soap*)soap); // detach soap struct
free(soap);
아무것도.
또한 웹 서비스 호출 메서드 내에서 새 스레드를 시작하려고했지만 스레드가 시작되자 마자 웹 클라이언트는 빈 응답을받습니다.
누구에게 의견이 있습니까?
정답입니다. 방금 추상 복사 방법을 구현해야했기 때문에 여러 클라이언트를 처리 할 수있었습니다. 의견을 보내 주셔서 감사합니다! – Daniel