summaryrefslogtreecommitdiffstats
path: root/mojo/public/cpp/utility/lib/mutex.cc
diff options
context:
space:
mode:
Diffstat (limited to 'mojo/public/cpp/utility/lib/mutex.cc')
-rw-r--r--mojo/public/cpp/utility/lib/mutex.cc52
1 files changed, 0 insertions, 52 deletions
diff --git a/mojo/public/cpp/utility/lib/mutex.cc b/mojo/public/cpp/utility/lib/mutex.cc
deleted file mode 100644
index 23370e1..0000000
--- a/mojo/public/cpp/utility/lib/mutex.cc
+++ /dev/null
@@ -1,52 +0,0 @@
-// Copyright 2014 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "mojo/public/cpp/utility/mutex.h"
-
-#include <assert.h>
-#include <errno.h>
-
-namespace mojo {
-
-// Release builds have inlined (non-error-checking) definitions in the header.
-#if !defined(NDEBUG)
-Mutex::Mutex() {
- pthread_mutexattr_t mutexattr;
- int rv = pthread_mutexattr_init(&mutexattr);
- assert(rv == 0);
- rv = pthread_mutexattr_settype(&mutexattr, PTHREAD_MUTEX_ERRORCHECK);
- assert(rv == 0);
- rv = pthread_mutex_init(&mutex_, &mutexattr);
- assert(rv == 0);
- rv = pthread_mutexattr_destroy(&mutexattr);
- assert(rv == 0);
-}
-
-Mutex::~Mutex() {
- int rv = pthread_mutex_destroy(&mutex_);
- assert(rv == 0);
-}
-
-void Mutex::Lock() {
- int rv = pthread_mutex_lock(&mutex_);
- assert(rv == 0);
-}
-
-void Mutex::Unlock() {
- int rv = pthread_mutex_unlock(&mutex_);
- assert(rv == 0);
-}
-
-bool Mutex::TryLock() {
- int rv = pthread_mutex_trylock(&mutex_);
- assert(rv == 0 || rv == EBUSY);
- return rv == 0;
-}
-
-void Mutex::AssertHeld() {
- assert(pthread_mutex_lock(&mutex_) == EDEADLK);
-}
-#endif // !defined(NDEBUG)
-
-} // namespace mojo