diff options
author | Bernard Normier <bernard@zeroc.com> | 2007-02-20 23:27:07 +0000 |
---|---|---|
committer | Bernard Normier <bernard@zeroc.com> | 2007-02-20 23:27:07 +0000 |
commit | f57149dc45cc62ded14b8486ad8546954dfd90bf (patch) | |
tree | 9fc2ed20ac2d9b1b3f0ca5301a29503de59f7da0 /cpp/demo/Ice/minimal/Server.cpp | |
parent | Renamed Make.rules.mak (diff) | |
download | ice-f57149dc45cc62ded14b8486ad8546954dfd90bf.tar.bz2 ice-f57149dc45cc62ded14b8486ad8546954dfd90bf.tar.xz ice-f57149dc45cc62ded14b8486ad8546954dfd90bf.zip |
Add CtrlCHandler
Diffstat (limited to 'cpp/demo/Ice/minimal/Server.cpp')
-rw-r--r-- | cpp/demo/Ice/minimal/Server.cpp | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/cpp/demo/Ice/minimal/Server.cpp b/cpp/demo/Ice/minimal/Server.cpp index 6b2e4874689..e7ff72db23e 100644 --- a/cpp/demo/Ice/minimal/Server.cpp +++ b/cpp/demo/Ice/minimal/Server.cpp @@ -7,16 +7,29 @@ // // ********************************************************************** +#include <IceUtil/IceUtil.h> #include <HelloI.h> #include <Ice/Ice.h> using namespace std; +static Ice::CommunicatorPtr communicator; + +static void +onCtrlC(int) +{ + if(communicator) + { + communicator->shutdown(); + } +} + int main(int argc, char* argv[]) { int status = EXIT_SUCCESS; - Ice::CommunicatorPtr communicator; + + IceUtil::CtrlCHandler ctrCHandler(onCtrlC); try { |