]> git.saurik.com Git - apple/icu.git/blobdiff - icuSources/common/mutex.h
ICU-62141.0.1.tar.gz
[apple/icu.git] / icuSources / common / mutex.h
index db546bc2ffa364e5e474b8e269c09b8112bf520d..bb45e7df83cf93b79735212414b7274946d4b656 100644 (file)
@@ -1,7 +1,9 @@
+// © 2016 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html
 /*
 ******************************************************************************
 *
-*   Copyright (C) 1997-2001, International Business Machines
+*   Copyright (C) 1997-2013, International Business Machines
 *   Corporation and others.  All Rights Reserved.
 *
 ******************************************************************************
 U_NAMESPACE_BEGIN
 
 //----------------------------------------------------------------------------
-// Code within this library which accesses protected data
+// Code within that accesses shared static or global data should
 // should instantiate a Mutex object while doing so. You should make your own 
 // private mutex where possible.
 
 // For example:
 // 
-// UMTX myMutex;
+// UMutex myMutex;
 // 
-// int InitializeMyMutex()
-// {
-//    umtx_init( &myMutex );
-//    return 0;
-// }
-// 
-// static int initializeMyMutex = InitializeMyMutex();
-//
 // void Function(int arg1, int arg2)
 // {
-//    static Object* foo; // Shared read-write object
+//    static Object* foo;     // Shared read-write object
 //    Mutex mutex(&myMutex);  // or no args for the global lock
 //    foo->Method();
 //    // When 'mutex' goes out of scope and gets destroyed here, the lock is released
@@ -58,17 +52,17 @@ U_NAMESPACE_BEGIN
 
 class U_COMMON_API Mutex : public UMemory {
 public:
-  inline Mutex(UMTX *mutex = NULL);
+  inline Mutex(UMutex *mutex = NULL);
   inline ~Mutex();
 
 private:
-  UMTX   *fMutex;
+  UMutex   *fMutex;
 
   Mutex(const Mutex &other); // forbid copying of this class
   Mutex &operator=(const Mutex &other); // forbid copying of this class
 };
 
-inline Mutex::Mutex(UMTX *mutex)
+inline Mutex::Mutex(UMutex *mutex)
   : fMutex(mutex)
 {
   umtx_lock(fMutex);