I'm a bit fuzzy on the details, but wasn't there an idea to use event-based synchronization *with* a worker thread? Something like, dxgi spawns a worker thread which waits (on a GPU-signaled fence?) for the queue to be safe to directly call vkQueuePresent()?