summaryrefslogtreecommitdiff
path: root/cpp/demo/Ice/async/Client.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/demo/Ice/async/Client.cpp')
-rw-r--r--cpp/demo/Ice/async/Client.cpp32
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 <<