4

C++ 非同期クライアントとノンブロッキング C++ サーバーの実装を探しています。apache にいくつかのメール アーカイブがありますが、活動は 2009 年後半です。最新の thrift でサポートされているかどうかを知りたいです。C++ コードに cob_style オプションを使用していますが、生成されたコードがコンパイルされません。助けていただければ幸いです、ありがとう

4

1 に答える 1

5

サーバーの場合、C++ で TNonBlockingServer 実装があります。

using namespace ::apache::thrift;
using namespace ::apache::thrift::protocol;
using namespace ::apache::thrift::transport;
using namespace ::apache::thrift::server;
using namespace ::apache::thrift::concurrency;


shared_ptr<MyHandler> handler(new MyHandler());
shared_ptr<TProcessor> processor(new (handler));
shared_ptr<TProtocolFactory> protocolFactory(new TBinaryProtocolFactory());

// using thread pool with maximum 15 threads to handle incoming requests
shared_ptr<ThreadManager> threadManager = ThreadManager::newSimpleThreadManager(15);
shared_ptr<PosixThreadFactory> threadFactory = shared_ptr<PosixThreadFactory>(new PosixThreadFactory());
threadManager->threadFactory(threadFactory);
threadManager->start();

//create and start the server
shared_ptr<TNonblockingServer> server = new  TNonblockingServer(processor, protocolFactory, port, threadManager);
server->serve();
于 2012-04-29T10:35:32.277 に答える