[roll] Roll fuchsia [closure-queue] Use checker instead of thrd_t

This removes the thrd_t parameter and instead uses an
async::synchronization_checker. This enables use with dispatchers that
guarantee in-order serial execution but don't guarantee the same thread
for all dispatches.

At some point we may want to relax the requirement that the
synchronization_checker must be constructed on the dispatcher. It's a
common and valid pattern in C++ and other languages to construct on one
thread and then restrict usage and deletion to a separate thread or
serialized execution context. The switch to the dispatcher (and back)
to create the synchronization_checker isn't free, and the association
between synchronization_checker and the dispatcher could be achieved
in other/alternate ways that don't force a double thread switch. For
now this CL does introduce the requirement to construct or call
SetDispatcher while on the dispatcher, but only because
synchronization_checker demands to be constructed on the dispatcher,
not for any fundamentally necessary reason (contrast with before, where
we obtained the thrd_t during thread creation and didn't need to switch
to that thread during construction).

Original-Original-Bug: 478359574
Original-Original-Bug: 482514220
Multiply: fuchsia-pkg://fuchsia.com/audio_encoder_test#meta/audio_encoder_test.cm
Original-Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1498677
Original-Original-Revision: 6bddddb3382f665a55e55b1b5bc3301490ef7232
GitOrigin-RevId: a219686999b54114ac1b8588d459c324ae2066d1
Change-Id: I6f8a575763641ee1bb7c9f5acce608cfdb18e43e
Reviewed-on: https://fuchsia-review.googlesource.com/c/integration/+/1644355
Cr-Commit-Position: refs/heads/main@{#194380}
1 file changed
tree: c2cd44803186d440322773b9a17baa0bca264d4d
  1. ctf/
  2. git-hooks/
  3. infra/
  4. third_party/
  5. cobalt
  6. flower
  7. jiri.lock
  8. MILESTONE
  9. minimal
  10. prebuilts
  11. README.md
  12. stem
  13. test_durations
README.md

Integration

This repository contains Fuchsia's Global Integration manifest files.

Making changes

All changes should be made to the internal version of this repository. Our infrastructure automatically updates this version when the internal one changes.

Currently all changes must be made by a Google employee. Non-Google employees wishing to make a change can ask for assistance in one of the communication channels documented at get involved.

Obtaining the source

First install Jiri.

Next run:

$ jiri init
$ jiri import minimal https://fuchsia.googlesource.com/integration
$ jiri update

Third party

Third party projects should have their own subdirectory in ./third_party.