[sim] Make SimDevice callbacks synchronous (#2861)

Asynchronous callbacks are more efficient but pose synchronization challenges;
other sim callbacks are synchronous but SimDevice ones were not.
This commit is contained in:
Peter Johnson
2020-11-14 21:04:51 -08:00
committed by GitHub
parent 6e76ab9c09
commit 47c59859ee
8 changed files with 286 additions and 213 deletions

View File

@@ -170,7 +170,7 @@ void HALSimWSProviderSimDevices::Initialize(wpi::uv::Loop& loop) {
m_deviceCreatedCbKey = HALSIM_RegisterSimDeviceCreatedCallback(
"", this, HALSimWSProviderSimDevices::DeviceCreatedCallbackStatic, 1);
m_deviceFreedCbKey = HALSIM_RegisterSimDeviceFreedCallback(
"", this, HALSimWSProviderSimDevices::DeviceFreedCallbackStatic);
"", this, HALSimWSProviderSimDevices::DeviceFreedCallbackStatic, false);
m_exec = UvExecFn::Create(loop, [](auto out, LoopFn func) {
func();