12.07.2015 Views

VisiBroker Edition

VisiBroker Edition

VisiBroker Edition

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

使 用 对 象 激 活 守 护 进 程 实 用 工 具path_name 属 性 指 定 实 现 对 象 的 可 执 行 程 序 的 确 切 路 径 名 。activation_policy 属 性表 示 服 务 器 的 激 活 策 略 。 args 和 env 属 性 表 示 要 传 递 给 服 务 器 的 可 选 变 量 和 环 境变 量 。对 象 创 建 和 注 册 的 实 例以 下 的 代 码 示 例 说 明 如 何 使 用 CreationImplDef 类 和 OAD.reg_implementation() 成员 函 数 在 OAD 上 注 册 服 务 器 。 这 一 机 制 可 用 于 单 独 的 管 理 程 序 , 不 一 定 要 用 在 对象 实 现 中 。 如 果 用 在 对 象 实 现 中 , 这 些 任 务 必 须 在 激 活 对 象 实 现 之 前 执 行 。int main(int argc, char* const* argv){try {// 初 始 化 ORB。CORBA::ORB_var orb = CORBA::ORB_init(argc, argv);// 取 得 管 理 器 IdPortableServer::ObjectId_var managerId =PortableServer::string_to_ObjectId("BankManager");// 找 到 一 个 帐 户 管 理 器 。 Give the full POA name and the servant ID.Bank::AccountManager_var manager =Bank::AccountManager::_bind("/bank_agent_poa", managerId);// 使 用 argv[1] 作 account 名 称 , 或 使 用 默 认 值 。const char* name = argc > 1 ? argv[1] :"Jack B. Quick";// 要 求 帐 户 管 理 器 打 开 一 个 命 名 的 帐 户 。Bank::Account_var account = manager->open(name);// 得 到 帐 户 的 余 额 。CORBA::Float balance = account->balance();// 打 印 余 额 。cout

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!