dawn-cmake/generator/templates/dawn_wire/client
Austin Eng 3120d5ea0d Track and destroy all child objects on wire client destruction
This is needed so that:
 1. We can support multiple devices in the wire. The device will need
    to know how to destroy its child objects.
 2. The wire needs to be aware of all objects and their in-flight
    callbacks so that it can reject them if the wire is disconnnected.
    A future change will handle this.
 3. Fix leaks of objects on page teardown. When the page is torn down,
    the wire client is destroyed, and we skip calling release() for all
    objects since the object holding the proc table was also destroyed.

Bug: dawn:384, dawn:556

Change-Id: Ie23afe4e515b02e924fcfc2db92b749fd2257c9c
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/31160
Reviewed-by: Austin Eng <enga@chromium.org>
Commit-Queue: Austin Eng <enga@chromium.org>
2020-11-11 19:46:18 +00:00
..
ApiObjects.h Track and destroy all child objects on wire client destruction 2020-11-11 19:46:18 +00:00
ApiProcs.cpp Reland "Add a per-thread proc table using thread local storage" 2020-10-06 16:13:42 +00:00
ClientBase.h Track and destroy all child objects on wire client destruction 2020-11-11 19:46:18 +00:00
ClientHandlers.cpp dawn_wire: Support chunked commands 2020-10-13 22:35:34 +00:00
ClientPrototypes.inc dawn_wire: Tag deserialize commands with volatile pointer 2019-10-07 20:38:47 +00:00