diff options
Diffstat (limited to 'cpp/demo/Ice/async/Client.cpp')
-rw-r--r-- | cpp/demo/Ice/async/Client.cpp | 32 |
1 files changed, 11 insertions, 21 deletions
diff --git a/cpp/demo/Ice/async/Client.cpp b/cpp/demo/Ice/async/Client.cpp index a48960ea8df..d7c7b2a430e 100644 --- a/cpp/demo/Ice/async/Client.cpp +++ b/cpp/demo/Ice/async/Client.cpp @@ -31,14 +31,24 @@ class AsyncClient : public Ice::Application { public: + AsyncClient(); + virtual int run(int, char*[]); - virtual void interruptCallback(int); private: void menu(); }; +AsyncClient::AsyncClient() : + // + // Since this is an interactive demo we don't want any signal + // handling. + // + Application(Ice::NoSignalHandling) +{ +} + int main(int argc, char* argv[]) { @@ -55,8 +65,6 @@ AsyncClient::run(int argc, char* argv[]) return EXIT_FAILURE; } - callbackOnInterrupt(); - HelloPrx hello = HelloPrx::checkedCast(communicator()->propertyToProxy("Hello.Proxy")); if(!hello) { @@ -110,24 +118,6 @@ AsyncClient::run(int argc, char* argv[]) } void -AsyncClient::interruptCallback(int) -{ - try - { - communicator()->destroy(); - } - catch(const IceUtil::Exception& ex) - { - cerr << appName() << ": " << ex << endl; - } - catch(...) - { - cerr << appName() << ": unknown exception" << endl; - } - exit(EXIT_SUCCESS); -} - -void AsyncClient::menu() { cout << |