omniidentity.cc
来自「编译工具」· CC 代码 · 共 76 行
CC
76 行
// -*- Mode: C++; -*-// Package : omniORB// omniIdentity.cc Created on: 2001/09/17// Author : Duncan Grisby (dpg1)//// Copyright (C) 2001 AT&T Laboratories Cambridge//// This file is part of the omniORB library.//// The omniORB library is free software; you can redistribute it and/or// modify it under the terms of the GNU Library General Public// License as published by the Free Software Foundation; either// version 2 of the License, or (at your option) any later version.//// This library is distributed in the hope that it will be useful,// but WITHOUT ANY WARRANTY; without even the implied warranty of// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU// Library General Public License for more details.//// You should have received a copy of the GNU Library General Public// License along with this library; if not, write to the Free// Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA // 02111-1307, USA////// Description:///* $Log: omniIdentity.cc,v $ Revision 1.1.2.1 2001/09/19 17:26:50 dpg1 Full clean-up after orb->destroy().*/#include <omniORB4/CORBA.h>#ifdef HAS_pch#pragma hdrstop#endif#include <omniIdentity.h>OMNI_USING_NAMESPACE(omni)int omniIdentity::identity_count = 0;static omni_tracedcondition* cond = 0;voidomniIdentity::waitForLastIdentity(){ omni_tracedmutex_lock sync(*omni::internalLock); if (identity_count == 0) return; omniORB::logs(15, "Waiting for client invocations to complete"); cond = new omni_tracedcondition(omni::internalLock); while (identity_count) cond->wait(); delete cond; cond = 0;}voidomniIdentity::lastIdentityHasBeenDeleted(){ ASSERT_OMNI_TRACEDMUTEX_HELD(*omni::internalLock, 1); if (cond) cond->signal();}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?