我試圖啓用多個同時客戶端訪問web服務,enabeling客戶端提出請求,並阻止數據可用(我這樣做,因爲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);
然而,當我修改代碼來調用我的web服務類代替,該服務調用不會做任何東西。
我也嘗試在我的webservice調用方法中啓動一個新線程,但一旦線程啓動,webclient會收到一個空響應。
有沒有人有任何建議?
這是正確的答案。我只需要實現抽象複製方法,這使我能夠處理多個客戶端。謝謝你的反饋! – Daniel 2011-12-21 23:13:58