mirror of
https://bitbucket.org/chromiumembedded/cef
synced 2025-06-05 21:39:12 +02:00
Create 2062 release branch for CEF3.
git-svn-id: https://chromiumembedded.googlecode.com/svn/branches/2062@1783 5089003a-bbd8-11dd-ad1f-f1f9622dbc98
This commit is contained in:
34
libcef_dll/base/cef_thread_checker_impl.cc
Normal file
34
libcef_dll/base/cef_thread_checker_impl.cc
Normal file
@ -0,0 +1,34 @@
|
||||
// Copyright (c) 2011 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 "include/base/internal/cef_thread_checker_impl.h"
|
||||
|
||||
namespace base {
|
||||
|
||||
ThreadCheckerImpl::ThreadCheckerImpl()
|
||||
: valid_thread_id_() {
|
||||
EnsureThreadIdAssigned();
|
||||
}
|
||||
|
||||
ThreadCheckerImpl::~ThreadCheckerImpl() {}
|
||||
|
||||
bool ThreadCheckerImpl::CalledOnValidThread() const {
|
||||
EnsureThreadIdAssigned();
|
||||
AutoLock auto_lock(lock_);
|
||||
return valid_thread_id_ == PlatformThread::CurrentRef();
|
||||
}
|
||||
|
||||
void ThreadCheckerImpl::DetachFromThread() {
|
||||
AutoLock auto_lock(lock_);
|
||||
valid_thread_id_ = PlatformThreadRef();
|
||||
}
|
||||
|
||||
void ThreadCheckerImpl::EnsureThreadIdAssigned() const {
|
||||
AutoLock auto_lock(lock_);
|
||||
if (valid_thread_id_.is_null()) {
|
||||
valid_thread_id_ = PlatformThread::CurrentRef();
|
||||
}
|
||||
}
|
||||
|
||||
} // namespace base
|
Reference in New Issue
Block a user