server.cpp

来自「ICE-3.2 一个开源的中间件」· C++ 代码 · 共 58 行

CPP
58
字号
// **********************************************************************//// Copyright (c) 2003-2007 ZeroC, Inc. All rights reserved.//// This copy of Ice is licensed to you under the terms described in the// ICE_LICENSE file included in this distribution.//// **********************************************************************#include <HelloI.h>#include <WorkQueue.h>#include <Ice/Application.h>using namespace std;class AsyncServer : public Ice::Application{public:    virtual int run(int, char*[]);    virtual void interruptCallback(int);private:    WorkQueuePtr _workQueue;};intmain(int argc, char* argv[]){    AsyncServer app;    return app.main(argc, argv, "config.server");}intAsyncServer::run(int argc, char* argv[]){    callbackOnInterrupt();    Ice::ObjectAdapterPtr adapter = communicator()->createObjectAdapter("Hello");    _workQueue = new WorkQueue();    adapter->add(new HelloI(_workQueue), communicator()->stringToIdentity("hello"));    _workQueue->start();    adapter->activate();    communicator()->waitForShutdown();    _workQueue->getThreadControl().join();    return EXIT_SUCCESS;}voidAsyncServer::interruptCallback(int){    _workQueue->destroy();    communicator()->shutdown();}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?