⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 reentrant.cpp

📁 JdonFramework need above jdk 1.4.0 This version has passed under Tomcat 4.x/5.x JBoss 3.x/JBoss 4.0
💻 CPP
字号:
/*_############################################################################  _##   _##  reentrant.cpp    _##  _##  SNMP++v3.2.21a  _##  -----------------------------------------------  _##  Copyright (c) 2001-2006 Jochen Katz, Frank Fock  _##  _##  This software is based on SNMP++2.6 from Hewlett Packard:  _##    _##    Copyright (c) 1996  _##    Hewlett-Packard Company  _##    _##  ATTENTION: USE OF THIS SOFTWARE IS SUBJECT TO THE FOLLOWING TERMS.  _##  Permission to use, copy, modify, distribute and/or sell this software   _##  and/or its documentation is hereby granted without fee. User agrees   _##  to display the above copyright notice and this license notice in all   _##  copies of the software and any documentation of the software. User   _##  agrees to assume all liability for the use of the software;   _##  Hewlett-Packard and Jochen Katz make no representations about the   _##  suitability of this software for any purpose. It is provided   _##  "AS-IS" without warranty of any kind, either express or implied. User   _##  hereby grants a royalty-free license to any and all derivatives based  _##  upon this software code base.   _##    _##  Stuttgart, Germany, Tue Nov 21 22:12:16 CET 2006   _##    _##########################################################################*/char reentrant_cpp_version[]="#(@) SNMP++ $Id: reentrant.cpp,v 1.6 2005/09/19 19:59:36 fock Exp $";#include "snmp_pp/reentrant.h"#ifdef SNMP_PP_NAMESPACEnamespace Snmp_pp {#endifSnmpSynchronized::SnmpSynchronized(){#ifdef _THREADS#ifdef WIN32	InitializeCriticalSection(&_mutex);#elif defined (CPU) && CPU == PPC603	_mutex = semMCreate(SEM_Q_PRIORITY | SEM_DELETE_SAFE | SEM_INVERSION_SAFE );#else	pthread_mutex_init(&_mutex, 0);#endif#endif}SnmpSynchronized::~SnmpSynchronized(){#ifdef _THREADS#ifdef WIN32	DeleteCriticalSection(&_mutex);#elif defined (CPU) && CPU == PPC603	semTake(_mutex, WAIT_FOREVER);	semDelete(_mutex);#else	pthread_mutex_destroy(&_mutex);#endif#endif}void SnmpSynchronized::lock(){#ifdef _THREADS#ifdef WIN32	EnterCriticalSection(&_mutex);#elif defined (CPU) && CPU == PPC603    semTake(_mutex, WAIT_FOREVER);#else	pthread_mutex_lock(&_mutex);#endif#endif}	void SnmpSynchronized::unlock(){#ifdef _THREADS#ifdef WIN32	LeaveCriticalSection(&_mutex);#elif defined (CPU) && CPU == PPC603    semGive(_mutex);#else	pthread_mutex_unlock(&_mutex);#endif#endif}	#ifdef SNMP_PP_NAMESPACE}; // end of namespace Snmp_pp#endif 

⌨️ 快捷键说明

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