You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
We currently have an async_execution module that handles the logic to switch between bevy's AsyncComputeTaskPool and our built-in SingleThreadedExecution task executors based on whether the user has chosen to activate the single_threaded_async feature.
In principle we could have a mechanism to let users choose a specific async executor for each provider that they use. This could be advantageous if they generally want to use the AsyncComputeTaskPool but sometimes need to run a Future that does not implement Send (in which case it needs to be run in the single-threaded executor). It's also possible that a user might have their own custom executor that they want to use, perhaps for only some of their async providers.
The major challenges are:
Define stable public traits that let users inject custom executors
Define a reasonable API for specifying what executor each async provider should use
The text was updated successfully, but these errors were encountered:
Before proceeding, is there an existing issue or discussion for this?
Description
We currently have an
async_execution
module that handles the logic to switch between bevy'sAsyncComputeTaskPool
and our built-inSingleThreadedExecution
task executors based on whether the user has chosen to activate thesingle_threaded_async
feature.In principle we could have a mechanism to let users choose a specific async executor for each provider that they use. This could be advantageous if they generally want to use the
AsyncComputeTaskPool
but sometimes need to run aFuture
that does not implementSend
(in which case it needs to be run in the single-threaded executor). It's also possible that a user might have their own custom executor that they want to use, perhaps for only some of their async providers.The major challenges are:
The text was updated successfully, but these errors were encountered: