class SynchronizationChecker

Defined at line 37 of file ../../sdk/lib/fidl/cpp/wire/include/lib/fidl/cpp/wire/internal/synchronization_checker.h

|SynchronizationChecker| accepts a policy where it may optionally check

for synchronized access. It is always used within an |AsyncBinding|.

Client/server types that are designed for synchronized environments will

verify such invariants at run-time.

When access to the binding is synchronized, the same binding will never be

used or destroyed in parallel. As such, it protects against data races and

use-after-free when calling into user code.

This class uses |async::synchronization_checker| internally. Refer to the

documentation on that class for the definition of synchronized access.

Public Methods

void SynchronizationChecker (async_dispatcher_t * dispatcher, ThreadingPolicy policy)

Defined at line 39 of file ../../sdk/lib/fidl/cpp/wire/include/lib/fidl/cpp/wire/internal/synchronization_checker.h

void check ()

Checks for exclusive access.

Defined at line 43 of file ../../sdk/lib/fidl/cpp/wire/include/lib/fidl/cpp/wire/internal/synchronization_checker.h

void assume_exclusive ()

Assumes exclusive access without checking. This should only be used

when mutual exclusion is guaranteed via other means (e.g. external

synchronization between two threads).

Defined at line 52 of file ../../sdk/lib/fidl/cpp/wire/include/lib/fidl/cpp/wire/internal/synchronization_checker.h

ThreadingPolicy policy ()

Defined at line 54 of file ../../sdk/lib/fidl/cpp/wire/include/lib/fidl/cpp/wire/internal/synchronization_checker.h