diff options
Diffstat (limited to 'mojo/public/cpp/bindings/lib/thread_checker_posix.h')
-rw-r--r-- | mojo/public/cpp/bindings/lib/thread_checker_posix.h | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/mojo/public/cpp/bindings/lib/thread_checker_posix.h b/mojo/public/cpp/bindings/lib/thread_checker_posix.h new file mode 100644 index 0000000..4701b88 --- /dev/null +++ b/mojo/public/cpp/bindings/lib/thread_checker_posix.h @@ -0,0 +1,31 @@ +// Copyright 2015 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. + +#ifndef MOJO_PUBLIC_CPP_BINDINGS_LIB_THREAD_CHECKER_POSIX_H_ +#define MOJO_PUBLIC_CPP_BINDINGS_LIB_THREAD_CHECKER_POSIX_H_ + +#include <pthread.h> + +#include "mojo/public/cpp/system/macros.h" + +namespace mojo { +namespace internal { + +// An implementation of ThreadChecker for POSIX systems. +class ThreadCheckerPosix { + public: + ThreadCheckerPosix(); + ~ThreadCheckerPosix(); + + bool CalledOnValidThread() const MOJO_WARN_UNUSED_RESULT; + private: + const pthread_t attached_thread_id_; + + MOJO_DISALLOW_COPY_AND_ASSIGN(ThreadCheckerPosix); +}; + +} // namespace internal +} // namespace mojo + +#endif // MOJO_PUBLIC_CPP_BINDINGS_LIB_THREAD_CHECKER_POSIX_H_ |