网络

ALNetwork是一个管理网络(network)的本地模块($AL_DIR/modules/lib)。ALNetwork的函数中只有exit()可以使用。退出时会关闭服务器,删除ALNetwork模块。

网络封装了GSoap 2.7.12。如果您拥有自己的网络,就可以调用“ALModule::exit()”方法,或是创建一个没有加载网络的代理程序:

// create a broker without network fBroker = AL::ALBroker::createBroker( "CameraViewerBroker", "", 0 ,pIP, pBrokerPort, true, pMediaPath, false); // load network fBroker->loadAndLaunchNetwork(qApp->applicationDirPath().toStdString() + "/", true); AL::ALPtr<Module> module = AL::ALModule::createModule<Module>(fBroker);

客户端和服务器会每2秒相互查验一次。如果三次查验失败,客户端和服务器会彼此断开连接。使用“keepalive=false”创建的代理程序会退出应用程序。可使用loadAndLaunchNetwork来停止Heartbeat:

// create a broker without network fBroker = AL::ALBroker::createBroker( "CameraViewerBroker", "", 0 ,pIP, pBrokerPort, true, pMediaPath, false); // load network fBroker->loadAndLaunchNetwork(qApp->applicationDirPath().toStdString() + "/", false); // remove heartbeat AL::ALPtr<Module> module = AL::ALModule::createModule<Module>(fBroker);





Copyright © 2010 Aldebaran-Robotics - 版权所有