OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "base/sequence_checker_impl.h" | 5 #include "base/sequence_checker_impl.h" |
6 | 6 |
7 #include "base/logging.h" | 7 #include "base/logging.h" |
8 | 8 |
9 namespace base { | 9 namespace base { |
10 | 10 |
11 SequenceCheckerImpl::SequenceCheckerImpl() { | 11 SequenceCheckerImpl::SequenceCheckerImpl() { |
12 AutoLock auto_lock(lock_); | 12 AutoLock auto_lock(lock_); |
13 EnsureSequenceTokenAssigned(); | 13 EnsureSequenceTokenAssigned(); |
14 } | 14 } |
15 | 15 |
16 SequenceCheckerImpl::~SequenceCheckerImpl() = default; | 16 SequenceCheckerImpl::~SequenceCheckerImpl() = default; |
17 | 17 |
18 bool SequenceCheckerImpl::CalledOnValidSequencedThread() const { | 18 bool SequenceCheckerImpl::CalledOnValidSequence() const { |
19 AutoLock auto_lock(lock_); | 19 AutoLock auto_lock(lock_); |
20 EnsureSequenceTokenAssigned(); | 20 EnsureSequenceTokenAssigned(); |
21 | 21 |
22 if (sequence_token_.IsValid()) | 22 if (sequence_token_.IsValid()) |
23 return sequence_token_ == SequenceToken::GetForCurrentThread(); | 23 return sequence_token_ == SequenceToken::GetForCurrentThread(); |
24 | 24 |
25 if (sequenced_worker_pool_token_.IsValid()) { | 25 if (sequenced_worker_pool_token_.IsValid()) { |
26 return sequenced_worker_pool_token_.Equals( | 26 return sequenced_worker_pool_token_.Equals( |
27 SequencedWorkerPool::GetSequenceTokenForCurrentThread()); | 27 SequencedWorkerPool::GetSequenceTokenForCurrentThread()); |
28 } | 28 } |
(...skipping 20 matching lines...) Expand all Loading... |
49 sequence_token_ = SequenceToken::GetForCurrentThread(); | 49 sequence_token_ = SequenceToken::GetForCurrentThread(); |
50 sequenced_worker_pool_token_ = | 50 sequenced_worker_pool_token_ = |
51 SequencedWorkerPool::GetSequenceTokenForCurrentThread(); | 51 SequencedWorkerPool::GetSequenceTokenForCurrentThread(); |
52 | 52 |
53 // SequencedWorkerPool doesn't use SequenceToken and code outside of | 53 // SequencedWorkerPool doesn't use SequenceToken and code outside of |
54 // SequenceWorkerPool doesn't set a SequencedWorkerPool token. | 54 // SequenceWorkerPool doesn't set a SequencedWorkerPool token. |
55 DCHECK(!sequence_token_.IsValid() || !sequenced_worker_pool_token_.IsValid()); | 55 DCHECK(!sequence_token_.IsValid() || !sequenced_worker_pool_token_.IsValid()); |
56 } | 56 } |
57 | 57 |
58 } // namespace base | 58 } // namespace base |
OLD | NEW |