I am working on a Vulkan renderer. And in order to improve loading time when I startup the program I use CompletableFuture to asynchronously compute some data that is not needed immediately. Now speed of access to this data is important.
So I'm unsure how I would achieve safely getting this data and waiting in case of the CompletableFuture not being done executing.
This is the solution I thought of but it's dirty to say the least. Would anyone have idea how this could be done in a cleaner/faster way?