Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(289)

Side by Side Diff: nspr/pr/include/prrwlock.h

Issue 2078763002: Delete bundled copy of NSS and replace with README. (Closed) Base URL: https://chromium.googlesource.com/chromium/deps/nss@master
Patch Set: Delete bundled copy of NSS and replace with README. Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « nspr/pr/include/prrng.h ('k') | nspr/pr/include/prshm.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5
6 /*
7 ** File: prrwlock.h
8 ** Description: API to basic reader-writer lock functions of NSPR.
9 **
10 **/
11
12 #ifndef prrwlock_h___
13 #define prrwlock_h___
14
15 #include "prtypes.h"
16
17 PR_BEGIN_EXTERN_C
18
19 /*
20 * PRRWLock --
21 *
22 * The reader writer lock, PRRWLock, is an opaque object to the clients
23 * of NSPR. All routines operate on a pointer to this opaque entity.
24 */
25
26
27 typedef struct PRRWLock PRRWLock;
28
29 #define PR_RWLOCK_RANK_NONE 0
30
31
32 /***********************************************************************
33 ** FUNCTION: PR_NewRWLock
34 ** DESCRIPTION:
35 ** Returns a pointer to a newly created reader-writer lock object.
36 ** INPUTS: Lock rank
37 ** Lock name
38 ** OUTPUTS: void
39 ** RETURN: PRRWLock*
40 ** If the lock cannot be created because of resource constraints, NULL
41 ** is returned.
42 **
43 ***********************************************************************/
44 NSPR_API(PRRWLock*) PR_NewRWLock(PRUint32 lock_rank, const char *lock_name);
45
46 /***********************************************************************
47 ** FUNCTION: PR_DestroyRWLock
48 ** DESCRIPTION:
49 ** Destroys a given RW lock object.
50 ** INPUTS: PRRWLock *lock - Lock to be freed.
51 ** OUTPUTS: void
52 ** RETURN: None
53 ***********************************************************************/
54 NSPR_API(void) PR_DestroyRWLock(PRRWLock *lock);
55
56 /***********************************************************************
57 ** FUNCTION: PR_RWLock_Rlock
58 ** DESCRIPTION:
59 ** Apply a read lock (non-exclusive) on a RWLock
60 ** INPUTS: PRRWLock *lock - Lock to be read-locked.
61 ** OUTPUTS: void
62 ** RETURN: None
63 ***********************************************************************/
64 NSPR_API(void) PR_RWLock_Rlock(PRRWLock *lock);
65
66 /***********************************************************************
67 ** FUNCTION: PR_RWLock_Wlock
68 ** DESCRIPTION:
69 ** Apply a write lock (exclusive) on a RWLock
70 ** INPUTS: PRRWLock *lock - Lock to write-locked.
71 ** OUTPUTS: void
72 ** RETURN: None
73 ***********************************************************************/
74 NSPR_API(void) PR_RWLock_Wlock(PRRWLock *lock);
75
76 /***********************************************************************
77 ** FUNCTION: PR_RWLock_Unlock
78 ** DESCRIPTION:
79 ** Release a RW lock. Unlocking an unlocked lock has undefined results.
80 ** INPUTS: PRRWLock *lock - Lock to unlocked.
81 ** OUTPUTS: void
82 ** RETURN: void
83 ***********************************************************************/
84 NSPR_API(void) PR_RWLock_Unlock(PRRWLock *lock);
85
86 PR_END_EXTERN_C
87
88 #endif /* prrwlock_h___ */
OLDNEW
« no previous file with comments | « nspr/pr/include/prrng.h ('k') | nspr/pr/include/prshm.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698