Return-Path: Delivered-To: apmail-apr-commits-archive@www.apache.org Received: (qmail 16606 invoked from network); 7 Feb 2005 23:12:33 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (209.237.227.199) by minotaur-2.apache.org with SMTP; 7 Feb 2005 23:12:33 -0000 Received: (qmail 24566 invoked by uid 500); 7 Feb 2005 23:12:28 -0000 Delivered-To: apmail-apr-commits-archive@apr.apache.org Received: (qmail 24513 invoked by uid 500); 7 Feb 2005 23:12:28 -0000 Mailing-List: contact commits-help@apr.apache.org; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: Reply-To: dev@apr.apache.org Delivered-To: mailing list commits@apr.apache.org Received: (qmail 24498 invoked by uid 99); 7 Feb 2005 23:12:28 -0000 X-ASF-Spam-Status: No, hits=-9.8 required=10.0 tests=ALL_TRUSTED,NO_REAL_NAME X-Spam-Check-By: apache.org Received: from minotaur.apache.org (HELO minotaur.apache.org) (209.237.227.194) by apache.org (qpsmtpd/0.28) with SMTP; Mon, 07 Feb 2005 15:12:26 -0800 Received: (qmail 15951 invoked by uid 65534); 7 Feb 2005 23:12:23 -0000 Message-ID: <20050207231223.15950.qmail@minotaur.apache.org> Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Mailer: svnmailer-1.0.0-dev Date: Mon, 07 Feb 2005 23:12:22 -0000 Subject: svn commit: r151768 [36/47] - in apr/site/trunk/docs/docs/apr: ./ iconv/ util/ To: commits@apr.apache.org From: jerenkrantz@apache.org X-Virus-Checked: Checked X-Spam-Rating: minotaur-2.apache.org 1.6.2 0/1000/N Modified: apr/site/trunk/docs/docs/apr/apr__thread__cond_8h-source.html URL: http://svn.apache.org/viewcvs/apr/site/trunk/docs/docs/apr/apr__thread= __cond_8h-source.html?view=3Ddiff&r1=3D151767&r2=3D151768 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D --- apr/site/trunk/docs/docs/apr/apr__thread__cond_8h-source.html (original) +++ apr/site/trunk/docs/docs/apr/apr__thread__cond_8h-source.html Mon Feb = 7 15:10:17 2005 @@ -3,143 +3,144 @@ Apache Portable Runtime: apr_thread_cond.h Source File - + -

apr_thread_cond.h

Go to the = documentation of this file.
00001 /* Copyright 2000-2004 The Apache Software Foundation -00002 * -00003 * Licensed under the Apache License, Versio= n 2.0 (the "License"); -00004 * you may not use this file except in compl= iance with the License. -00005 * You may obtain a copy of the License at -00006 * -00007 * http://www.apache.org/licenses/LICENS= E-2.0 -00008 * -00009 * Unless required by applicable law or agre= ed to in writing, software -00010 * distributed under the License is distribu= ted on an "AS IS" BASIS, -00011 * WITHOUT WARRANTIES OR CONDITIONS OF ANY K= IND, either express or implied. -00012 * See the License for the specific language= governing permissions and -00013 * limitations under the License. -00014 */ -00015=20 -00016 #ifndef APR_THREAD_COND_H -00017 #de= fine APR_THREAD_COND_H -00018 -00019 /** -00020 * @file apr_thread_cond.h -00021 * @brief APR Condition Variable Routines -00022 */ -00023=20 -00024 #include "apr.h" -00025 #include "apr_pools.h" -00026 #include "apr_errno.h" -00027 #include "apr_time.h" -00028 #include "apr_thread_mutex.h" -00029=20 -00030 #ifdef __cplusplus -00031 extern "C" { -00032 #endif /= * __cplusplus */ -00033=20 -00034 #if APR_HAS_THREADS || defined(DOXYGEN)= -00035 -00036 /** -00037 * @defgroup apr_thread_cond Condition Varia= ble Routines -00038 * @ingroup APR -00039 * @{ -00040 */ -00041 -00042 /** Opaque structure for thread condition va= riables */ -00043 typedef struct apr_thread_cond_t apr_thread_cond_t; -00044 -00045 /** -00046 * Note: destroying a condition variable (or= likewise, destroying or -00047 * clearing the pool from which a condition = variable was allocated) if -00048 * any threads are blocked waiting on it giv= es undefined results. -00049 */ -00050 -00051 /** -00052 * Create and initialize a condition variabl= e that can be used to signal -00053 * and schedule threads in a single process.= -00054 * @param cond the memory address where the = newly created condition variable -00055 * will be stored. -00056 * @param pool the pool from which to alloca= te the mutex. -00057 */ -00058 APR_DECLARE(ap= r_status_t) apr_thread_cond_create(apr_thread_cond_t **cond, -00059 apr_pool_t *pool); -00060 -00061 /** -00062 * Put the active calling thread to sleep un= til signaled to wake up. Each -00063 * condition variable must be associated wit= h a mutex, and that mutex must -00064 * be locked before calling this function, = or the behavior will be -00065 * undefined. As the calling thread is put t= o sleep, the given mutex -00066 * will be simultaneously released; and as t= his thread wakes up the lock -00067 * is again simultaneously acquired. -00068 * @param cond the condition variable on whi= ch to block. -00069 * @param mutex the mutex that must be locke= d upon entering this function, -00070 * is released while the thread is as= leep, and is again acquired before -00071 * returning from this function. -00072 */ -00073 APR_DECLARE(ap= r_status_t) apr_thread_cond_wait(apr_thread_cond_t *cond, -00074 apr_thread_mutex_t *mutex); -00075 -00076 /** -00077 * Put the active calling thread to sleep un= til signaled to wake up or -00078 * the timeout is reached. Each condition va= riable must be associated -00079 * with a mutex, and that mutex must be lock= ed before calling this -00080 * function, or the behavior will be undefin= ed. As the calling thread -00081 * is put to sleep, the given mutex will be = simultaneously released; -00082 * and as this thread wakes up the lock is a= gain simultaneously acquired. -00083 * @param cond the condition variable on whi= ch to block. -00084 * @param mutex the mutex that must be locke= d upon entering this function, -00085 * is released while the thread is as= leep, and is again acquired before -00086 * returning from this function. -00087 * @param timeout The amount of time in micr= oseconds to wait. This is -00088 * a maximum, not a minimum. If the c= ondition is signaled, we -00089 * will wake up before this time, oth= erwise the error APR_TIMEUP -00090 * is returned. -00091 */ -00092 APR_DECLARE(ap= r_status_t) apr_thread_cond_timedwait(apr_thread_cond_t *cond, -00093 apr_thread_mutex_t *mutex, -00094 apr_interval_time_t timeout); -00095 -00096 /** -00097 * Signals a single thread, if one exists, t= hat is blocking on the given -00098 * condition variable. That thread is then s= cheduled to wake up and acquire -00099 * the associated mutex. Although it is not = required, if predictable scheduling -00100 * is desired, that mutex must be locked whi= le calling this function. -00101 * @param cond the condition variable on whi= ch to produce the signal. -00102 */ -00103 APR_DECLARE(ap= r_status_t) apr_thread_cond_signal(apr_thread_cond_t *cond); -00104 -00105 /** -00106 * Signals all threads blocking on the given= condition variable. -00107 * Each thread that was signaled is then sch= eduled to wake up and acquire -00108 * the associated mutex. This will happen in= a serialized manner. -00109 * @param cond the condition variable on whi= ch to produce the broadcast. -00110 */ -00111 APR_DECLARE(ap= r_status_t) apr_thread_cond_broadcast(apr_thread_cond_t *cond); -00112 -00113 /** -00114 * Destroy the condition variable and free t= he associated memory. -00115 * @param cond the condition variable to des= troy. -00116 */ -00117 APR_DECLARE(ap= r_status_t) apr_thread_cond_destroy(apr_thread_cond_t *cond); -00118 -00119 /** -00120 * Get the pool used by this thread_cond. -00121 * @return apr_pool_t the pool -00122 */ -00123 APR_POOL_DECLARE_ACCESSOR(thread_cond); -00124=20 -00125 #endif /* APR_HAS_THREADS */ -00126 -00127 /** @} */ -00128=20 -00129 #ifdef __cplusplus -00130 } -00131 #endif -00132=20 -00133 #endif /* ! APR_THREAD_COND_H */ -

Generat= ed on Wed Sep 1 21:36:05 2004 for Apache Portable Runtime by +

apr_thread_cond.h

Go to the = documentation of this file.
00001 /* Copyright 2000-2005 The Apache Software Foundation or its= licensors, as +00002 * applicable. +00003 * +00004 * Licensed under the Apache License, Versio= n 2.0 (the "License"); +00005 * you may not use this file except in compl= iance with the License. +00006 * You may obtain a copy of the License at +00007 * +00008 * http://www.apache.org/licenses/LICENS= E-2.0 +00009 * +00010 * Unless required by applicable law or agre= ed to in writing, software +00011 * distributed under the License is distribu= ted on an "AS IS" BASIS, +00012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY K= IND, either express or implied. +00013 * See the License for the specific language= governing permissions and +00014 * limitations under the License. +00015 */ +00016=20 +00017 #ifndef APR_THREAD_COND_H +00018 #de= fine APR_THREAD_COND_H +00019 +00020 /** +00021 * @file apr_thread_cond.h +00022 * @brief APR Condition Variable Routines +00023 */ +00024=20 +00025 #include "apr.h" +00026 #include "apr_pools.h" +00027 #include "apr_errno.h" +00028 #include "apr_time.h" +00029 #include "apr_thread_mutex.h" +00030=20 +00031 #ifdef __cplusplus +00032 extern "C" { +00033 #endif /= * __cplusplus */ +00034=20 +00035 #if APR_HAS_THREADS || defined(DOXYGEN)= +00036 +00037 /** +00038 * @defgroup apr_thread_cond Condition Varia= ble Routines +00039 * @ingroup APR +00040 * @{ +00041 */ +00042 +00043 /** Opaque structure for thread condition va= riables */ +00044 typedef struct apr_thread_cond_t apr_thread_cond_t; +00045 +00046 /** +00047 * Note: destroying a condition variable (or= likewise, destroying or +00048 * clearing the pool from which a condition = variable was allocated) if +00049 * any threads are blocked waiting on it giv= es undefined results. +00050 */ +00051 +00052 /** +00053 * Create and initialize a condition variabl= e that can be used to signal +00054 * and schedule threads in a single process.= +00055 * @param cond the memory address where the = newly created condition variable +00056 * will be stored. +00057 * @param pool the pool from which to alloca= te the mutex. +00058 */ +00059 APR_DECLARE(apr_status_t) apr_thread_cond_create(apr_thread_cond_t *= *cond, +00060 apr_pool_t *pool); +00061 +00062 /** +00063 * Put the active calling thread to sleep un= til signaled to wake up. Each +00064 * condition variable must be associated wit= h a mutex, and that mutex must +00065 * be locked before calling this function, = or the behavior will be +00066 * undefined. As the calling thread is put t= o sleep, the given mutex +00067 * will be simultaneously released; and as t= his thread wakes up the lock +00068 * is again simultaneously acquired. +00069 * @param cond the condition variable on whi= ch to block. +00070 * @param mutex the mutex that must be locke= d upon entering this function, +00071 * is released while the thread is as= leep, and is again acquired before +00072 * returning from this function. +00073 */ +00074 APR_DECLARE(apr_status_t) apr_thread_cond_wait(apr_thread_cond_t *co= nd, +00075 apr_thread_mutex_t *m= utex); +00076 +00077 /** +00078 * Put the active calling thread to sleep un= til signaled to wake up or +00079 * the timeout is reached. Each condition va= riable must be associated +00080 * with a mutex, and that mutex must be lock= ed before calling this +00081 * function, or the behavior will be undefin= ed. As the calling thread +00082 * is put to sleep, the given mutex will be = simultaneously released; +00083 * and as this thread wakes up the lock is a= gain simultaneously acquired. +00084 * @param cond the condition variable on whi= ch to block. +00085 * @param mutex the mutex that must be locke= d upon entering this function, +00086 * is released while the thread is as= leep, and is again acquired before +00087 * returning from this function. +00088 * @param timeout The amount of time in micr= oseconds to wait. This is +00089 * a maximum, not a minimum. If the c= ondition is signaled, we +00090 * will wake up before this time, oth= erwise the error APR_TIMEUP +00091 * is returned. +00092 */ +00093 APR_DECLARE(apr_status_t) apr_thread_cond_timedwait(apr_thread_cond_= t *cond, +00094 apr_thread_mutex= _t *mutex, +00095 apr_interval_tim= e_t timeout); +00096 +00097 /** +00098 * Signals a single thread, if one exists, t= hat is blocking on the given +00099 * condition variable. That thread is then s= cheduled to wake up and acquire +00100 * the associated mutex. Although it is not = required, if predictable scheduling +00101 * is desired, that mutex must be locked whi= le calling this function. +00102 * @param cond the condition variable on whi= ch to produce the signal. +00103 */ +00104 APR_DECLARE(apr_status_t) apr_thread_cond_signal(apr_thread_cond_t *= cond); +00105 +00106 /** +00107 * Signals all threads blocking on the given= condition variable. +00108 * Each thread that was signaled is then sch= eduled to wake up and acquire +00109 * the associated mutex. This will happen in= a serialized manner. +00110 * @param cond the condition variable on whi= ch to produce the broadcast. +00111 */ +00112 APR_DECLARE(apr_status_t) apr_thread_cond_broadcast(apr_thread_cond_= t *cond); +00113 +00114 /** +00115 * Destroy the condition variable and free t= he associated memory. +00116 * @param cond the condition variable to des= troy. +00117 */ +00118 APR_DECLARE(apr_status_t) apr_thread_cond_destroy(apr_thread_cond_t = *cond); +00119 +00120 /** +00121 * Get the pool used by this thread_cond. +00122 * @return apr_pool_t the pool +00123 */ +00124 APR_POOL_DECLARE_ACCESSOR(thread_cond); +00125=20 +00126 #endif /* APR_HAS_THREADS */ +00127 +00128 /** @} */ +00129=20 +00130 #ifdef __cplusplus +00131 } +00132 #endif +00133=20 +00134 #endif /* ! APR_THREAD_COND_H */ +

Generat= ed on Mon Feb 7 13:18:25 2005 for Apache Portable Runtime by -3D"doxygen"= 1.3.8
+3D"doxygen"= 1.3.7
Modified: apr/site/trunk/docs/docs/apr/apr__thread__cond_8h.html URL: http://svn.apache.org/viewcvs/apr/site/trunk/docs/docs/apr/apr__thread= __cond_8h.html?view=3Ddiff&r1=3D151767&r2=3D151768 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D --- apr/site/trunk/docs/docs/apr/apr__thread__cond_8h.html (original) +++ apr/site/trunk/docs/docs/apr/apr__thread__cond_8h.html Mon Feb 7 15:10= :17 2005 @@ -3,9 +3,10 @@ Apache Portable Runtime: apr_thread_cond.h File Reference - + -

apr_thread_cond.h File Reference

APR Condition Variable Routines. = More... +

apr_thread_cond.h File Reference

APR Condition Variable Routines. =20 +More...

#include "apr.h"
#include "apr_poo= ls.h"
@@ -38,8 +39,8 @@


Detailed Description

APR Condition Variable Routines.=20

-


Generated on Wed Se= p 1 21:36:05 2004 for Apache Portable Runtime by +
Generated on Mon Fe= b 7 13:18:25 2005 for Apache Portable Runtime by -3D"doxygen"= 1.3.8
+3D"doxygen"= 1.3.7
Modified: apr/site/trunk/docs/docs/apr/apr__thread__mutex_8h-source.html URL: http://svn.apache.org/viewcvs/apr/site/trunk/docs/docs/apr/apr__thread= __mutex_8h-source.html?view=3Ddiff&r1=3D151767&r2=3D151768 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D --- apr/site/trunk/docs/docs/apr/apr__thread__mutex_8h-source.html (origina= l) +++ apr/site/trunk/docs/docs/apr/apr__thread__mutex_8h-source.html Mon Feb = 7 15:10:17 2005 @@ -3,119 +3,120 @@ Apache Portable Runtime: apr_thread_mutex.h Source File - + -

apr_thread_mutex.h

Go to th= e documentation of this file.
00001 /* Copyright 2000-2004 The Apache Software Foundation -00002 * -00003 * Licensed under the Apache License, Versio= n 2.0 (the "License"); -00004 * you may not use this file except in compl= iance with the License. -00005 * You may obtain a copy of the License at -00006 * -00007 * http://www.apache.org/licenses/LICENS= E-2.0 -00008 * -00009 * Unless required by applicable law or agre= ed to in writing, software -00010 * distributed under the License is distribu= ted on an "AS IS" BASIS, -00011 * WITHOUT WARRANTIES OR CONDITIONS OF ANY K= IND, either express or implied. -00012 * See the License for the specific language= governing permissions and -00013 * limitations under the License. -00014 */ -00015=20 -00016 #ifndef APR_THREAD_MUTEX_H -00017 #de= fine APR_THREAD_MUTEX_H -00018 -00019 /** -00020 * @file apr_thread_mutex.h -00021 * @brief APR Thread Mutex Routines -00022 */ -00023=20 -00024 #include "apr.h" -00025 #include "apr_errno.h" -00026=20 -00027 #ifdef __cplusplus -00028 extern "C" { -00029 #endif /= * __cplusplus */ -00030=20 -00031 #if APR_HAS_THREADS || defined(DOXYGEN)= -00032 -00033 /** -00034 * @defgroup apr_thread_mutex Thread Mutex R= outines -00035 * @ingroup APR -00036 * @{ -00037 */ -00038 -00039 /** Opaque thread-local mutex structure */ -00040 typedef struct apr_thread_mutex_t apr_thread_mutex_t; -00041=20 -00042 #define APR_THREAD_MUTEX_= DEFAULT 0x0 /**< platform-optimal lock= behavior */ -00043 #define APR_THREAD_MUTEX_= NESTED 0x1 /**< enable nested (recurs= ive) locks */ -00044 #define APR_THREAD_MUTEX_= UNNESTED 0x2 /**< disable nested locks = */ -00045=20 -00046 /* Delayed the include to avoid a circular r= eference */ -00047 #include "apr_pools.h" -00048 -00049 /** -00050 * Create and initialize a mutex that can be= used to synchronize threads. -00051 * @param mutex the memory address where the= newly created mutex will be -00052 * stored. -00053 * @param flags Or'ed value of: -00054 * <PRE> -00055 * APR_THREAD_MUTEX_DEFAULT plat= form-optimal lock behavior. -00056 * APR_THREAD_MUTEX_NESTED enab= le nested (recursive) locks. -00057 * APR_THREAD_MUTEX_UNNESTED disa= ble nested locks (non-recursive). -00058 * </PRE> -00059 * @param pool the pool from which to alloca= te the mutex. -00060 * @warning Be cautious in using APR_THREAD_= MUTEX_DEFAULT. While this is the -00061 * most optimial mutex based on a given plat= form's performance charateristics, -00062 * it will behave as either a nested or an u= nnested lock. -00063 */ -00064 APR_DECLARE(ap= r_status_t) apr_thread_mutex_create(apr_thread_mutex_t **mutex, -00065 unsigned int flags, -00066 apr_pool_t *pool); -00067 /** -00068 * Acquire the lock for the given mutex. If = the mutex is already locked, -00069 * the current thread will be put to sleep u= ntil the lock becomes available. -00070 * @param mutex the mutex on which to acquir= e the lock. -00071 */ -00072 APR_DECLARE(ap= r_status_t) apr_thread_mutex_lock(apr_thread_mutex_t *mutex); -00073 -00074 /** -00075 * Attempt to acquire the lock for the given= mutex. If the mutex has already -00076 * been acquired, the call returns immediate= ly with APR_EBUSY. Note: it -00077 * is important that the APR_STATUS_IS_EBUSY= (s) macro be used to determine -00078 * if the return value was APR_EBUSY, for po= rtability reasons. -00079 * @param mutex the mutex on which to attemp= t the lock acquiring. -00080 */ -00081 APR_DECLARE(ap= r_status_t) apr_thread_mutex_trylock(apr_thread_mutex_t *mutex); -00082 -00083 /** -00084 * Release the lock for the given mutex. -00085 * @param mutex the mutex from which to rele= ase the lock. -00086 */ -00087 APR_DECLARE(ap= r_status_t) apr_thread_mutex_unlock(apr_thread_mutex_t *mutex); -00088 -00089 /** -00090 * Destroy the mutex and free the memory ass= ociated with the lock. -00091 * @param mutex the mutex to destroy. -00092 */ -00093 APR_DECLARE(ap= r_status_t) apr_thread_mutex_destroy(apr_thread_mutex_t *mutex); -00094 -00095 /** -00096 * Get the pool used by this thread_mutex. -00097 * @return apr_pool_t the pool -00098 */ -00099 APR_POOL_DECLARE_ACCESSOR(thread_mutex); -00100=20 -00101 #endif /* APR_HAS_THREADS */ -00102 -00103 /** @} */ -00104=20 -00105 #ifdef __cplusplus -00106 } -00107 #endif -00108=20 -00109 #endif /* ! APR_THREAD_MUTEX_H */ -

Generat= ed on Wed Sep 1 21:36:05 2004 for Apache Portable Runtime by +

apr_thread_mutex.h

Go to th= e documentation of this file.
00001 /* Copyright 2000-2005 The Apache Software Foundation or i= ts licensors, as +00002 * applicable. +00003 * +00004 * Licensed under the Apache License, Versio= n 2.0 (the "License"); +00005 * you may not use this file except in compl= iance with the License. +00006 * You may obtain a copy of the License at +00007 * +00008 * http://www.apache.org/licenses/LICENS= E-2.0 +00009 * +00010 * Unless required by applicable law or agre= ed to in writing, software +00011 * distributed under the License is distribu= ted on an "AS IS" BASIS, +00012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY K= IND, either express or implied. +00013 * See the License for the specific language= governing permissions and +00014 * limitations under the License. +00015 */ +00016=20 +00017 #ifndef APR_THREAD_MUTEX_H +00018 #de= fine APR_THREAD_MUTEX_H +00019 +00020 /** +00021 * @file apr_thread_mutex.h +00022 * @brief APR Thread Mutex Routines +00023 */ +00024=20 +00025 #include "apr.h" +00026 #include "apr_errno.h" +00027=20 +00028 #ifdef __cplusplus +00029 extern "C" { +00030 #endif /= * __cplusplus */ +00031=20 +00032 #if APR_HAS_THREADS || defined(DOXYGEN)= +00033 +00034 /** +00035 * @defgroup apr_thread_mutex Thread Mutex R= outines +00036 * @ingroup APR +00037 * @{ +00038 */ +00039 +00040 /** Opaque thread-local mutex structure */ +00041 typedef struct apr_thread_mutex_t apr_thread_mutex_t; +00042=20 +00043 #define APR_THREAD_MUTEX_= DEFAULT 0x0 /**< platform-optimal lock= behavior */ +00044 #define APR_THREAD_MUTEX_= NESTED 0x1 /**< enable nested (recurs= ive) locks */ +00045 #define APR_THREAD_MUTEX_= UNNESTED 0x2 /**< disable nested locks = */ +00046=20 +00047 /* Delayed the include to avoid a circular r= eference */ +00048 #include "apr_pools.h" +00049 +00050 /** +00051 * Create and initialize a mutex that can be= used to synchronize threads. +00052 * @param mutex the memory address where the= newly created mutex will be +00053 * stored. +00054 * @param flags Or'ed value of: +00055 * <PRE> +00056 * APR_THREAD_MUTEX_DEFAULT plat= form-optimal lock behavior. +00057 * APR_THREAD_MUTEX_NESTED enab= le nested (recursive) locks. +00058 * APR_THREAD_MUTEX_UNNESTED disa= ble nested locks (non-recursive). +00059 * </PRE> +00060 * @param pool the pool from which to alloca= te the mutex. +00061 * @warning Be cautious in using APR_THREAD_= MUTEX_DEFAULT. While this is the +00062 * most optimial mutex based on a given plat= form's performance charateristics, +00063 * it will behave as either a nested or an u= nnested lock. +00064 */ +00065 APR_DECLARE(apr_status_t) apr_thread_mutex_create(apr_thread_mutex_t= **mutex, +00066 unsigned int flags, +00067 apr_pool_t *pool);= +00068 /** +00069 * Acquire the lock for the given mutex. If = the mutex is already locked, +00070 * the current thread will be put to sleep u= ntil the lock becomes available. +00071 * @param mutex the mutex on which to acquir= e the lock. +00072 */ +00073 APR_DECLARE(apr_status_t) apr_thread_mutex_lock(apr_thread_mutex_t *= mutex); +00074 +00075 /** +00076 * Attempt to acquire the lock for the given= mutex. If the mutex has already +00077 * been acquired, the call returns immediate= ly with APR_EBUSY. Note: it +00078 * is important that the APR_STATUS_IS_EBUSY= (s) macro be used to determine +00079 * if the return value was APR_EBUSY, for po= rtability reasons. +00080 * @param mutex the mutex on which to attemp= t the lock acquiring. +00081 */ +00082 APR_DECLARE(apr_status_t) apr_thread_mutex_trylock(apr_thread_mutex_= t *mutex); +00083 +00084 /** +00085 * Release the lock for the given mutex. +00086 * @param mutex the mutex from which to rele= ase the lock. +00087 */ +00088 APR_DECLARE(apr_status_t) apr_thread_mutex_unlock(apr_thread_mutex_t= *mutex); +00089 +00090 /** +00091 * Destroy the mutex and free the memory ass= ociated with the lock. +00092 * @param mutex the mutex to destroy. +00093 */ +00094 APR_DECLARE(apr_status_t) apr_thread_mutex_destroy(apr_thread_mutex_= t *mutex); +00095 +00096 /** +00097 * Get the pool used by this thread_mutex. +00098 * @return apr_pool_t the pool +00099 */ +00100 APR_POOL_DECLARE_ACCESSOR(thread_mutex); +00101=20 +00102 #endif /* APR_HAS_THREADS */ +00103 +00104 /** @} */ +00105=20 +00106 #ifdef __cplusplus +00107 } +00108 #endif +00109=20 +00110 #endif /* ! APR_THREAD_MUTEX_H */ +

Generat= ed on Mon Feb 7 13:18:25 2005 for Apache Portable Runtime by -3D"doxygen"= 1.3.8
+3D"doxygen"= 1.3.7
Modified: apr/site/trunk/docs/docs/apr/apr__thread__mutex_8h.html URL: http://svn.apache.org/viewcvs/apr/site/trunk/docs/docs/apr/apr__thread= __mutex_8h.html?view=3Ddiff&r1=3D151767&r2=3D151768 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D --- apr/site/trunk/docs/docs/apr/apr__thread__mutex_8h.html (original) +++ apr/site/trunk/docs/docs/apr/apr__thread__mutex_8h.html Mon Feb 7 15:1= 0:17 2005 @@ -3,9 +3,10 @@ Apache Portable Runtime: apr_thread_mutex.h File Reference - + -

apr_thread_mutex.h File Reference

APR Thread Mutex Routines. More... +

apr_thread_mutex.h File Reference

APR Thread Mutex Routines. =20 +More...

#include "apr.h"
#include "apr_err= no.h"
@@ -15,11 +16,11 @@ Go to the source code of thi= s file. - + =20 - + =20 - + =20 @@ -41,8 +42,8 @@

Detailed Description

APR Thread Mutex Routines.=20

-


Generated on Wed Se= p 1 21:36:05 2004 for Apache Portable Runtime by +
Generated on Mon Fe= b 7 13:18:25 2005 for Apache Portable Runtime by -3D"doxygen"= 1.3.8
+3D"doxygen"= 1.3.7

Defines

#define&nb= sp;APR_THREAD_MUTEX_DEFAULT  = ; 0x0
#define&nb= sp;APR_THREAD_MUTEX_DEFAULT  = ; 0x0 /**< platform-optimal lock behavior */
#define&nb= sp;APR_THREAD_MUTEX_NESTED  =  0x1
#define&nb= sp;APR_THREAD_MUTEX_NESTED  =  0x1 /**< enable nested (recursive) locks */
#define&nb= sp;APR_THREAD_MUTEX_UNNESTED &nbs= p; 0x2
#define&nb= sp;APR_THREAD_MUTEX_UNNESTED &nbs= p; 0x2 /**< disable nested locks */

Typedefs

typedef apr_thread_mutex_= t apr_thread_mutex_t