#include <shared_thread_merger.h>
Public Member Functions | |
| SharedThreadMerger (TaskQueueId owner, TaskQueueId subsumed) | |
| bool | MergeWithLease (RasterThreadMergerId caller, size_t lease_term) |
| bool | UnMergeNowIfLastOne (RasterThreadMergerId caller) |
| void | ExtendLeaseTo (RasterThreadMergerId caller, size_t lease_term) |
| bool | IsMergedUnSafe () const |
| bool | IsEnabledUnSafe () const |
| void | SetEnabledUnSafe (bool enabled) |
| bool | DecrementLease (RasterThreadMergerId caller) |
Public Member Functions inherited from fml::RefCountedThreadSafe< SharedThreadMerger > | |
| void | Release () const |
Public Member Functions inherited from fml::internal::RefCountedThreadSafeBase | |
| void | AddRef () const |
| bool | HasOneRef () const |
| void | AssertHasOneRef () const |
Additional Inherited Members | |
Protected Member Functions inherited from fml::RefCountedThreadSafe< SharedThreadMerger > | |
| RefCountedThreadSafe () | |
| ~RefCountedThreadSafe () | |
Protected Member Functions inherited from fml::internal::RefCountedThreadSafeBase | |
| RefCountedThreadSafeBase () | |
| ~RefCountedThreadSafeBase () | |
| bool | Release () const |
| void | Adopt () |
Instance of this class is shared between multiple |RasterThreadMerger| instances, Most of the callings from |RasterThreadMerger| will be redirected to this class with one more caller parameter.
Definition at line 24 of file shared_thread_merger.h.
| fml::SharedThreadMerger::SharedThreadMerger | ( | fml::TaskQueueId | owner, |
| fml::TaskQueueId | subsumed | ||
| ) |
Definition at line 14 of file shared_thread_merger.cc.
| bool fml::SharedThreadMerger::DecrementLease | ( | RasterThreadMergerId | caller | ) |
Definition at line 53 of file shared_thread_merger.cc.
References FML_CHECK, and FML_LOG.
Referenced by fml::RasterThreadMerger::DecrementLease().
| void fml::SharedThreadMerger::ExtendLeaseTo | ( | RasterThreadMergerId | caller, |
| size_t | lease_term | ||
| ) |
Definition at line 77 of file shared_thread_merger.cc.
References FML_DCHECK, and IsMergedUnSafe().
Referenced by fml::RasterThreadMerger::ExtendLeaseTo().
| bool fml::SharedThreadMerger::IsEnabledUnSafe | ( | ) | const |
Definition at line 90 of file shared_thread_merger.cc.
| bool fml::SharedThreadMerger::IsMergedUnSafe | ( | ) | const |
Definition at line 86 of file shared_thread_merger.cc.
Referenced by ExtendLeaseTo(), and MergeWithLease().
| bool fml::SharedThreadMerger::MergeWithLease | ( | RasterThreadMergerId | caller, |
| size_t | lease_term | ||
| ) |
Definition at line 21 of file shared_thread_merger.cc.
References FML_CHECK, FML_DCHECK, IsMergedUnSafe(), and fml::MessageLoopTaskQueues::Merge().
Referenced by fml::RasterThreadMerger::MergeWithLease().
| void fml::SharedThreadMerger::SetEnabledUnSafe | ( | bool | enabled | ) |
Definition at line 94 of file shared_thread_merger.cc.
Referenced by fml::RasterThreadMerger::Disable(), and fml::RasterThreadMerger::Enable().
| bool fml::SharedThreadMerger::UnMergeNowIfLastOne | ( | RasterThreadMergerId | caller | ) |
Definition at line 44 of file shared_thread_merger.cc.
Referenced by fml::RasterThreadMerger::UnMergeNowIfLastOne().