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
bevy 0.14 doesn't allow bevy_app::App to be sent between threads anymore.
What went wrong
Looks like RunnerFn:
typeRunnerFn = Box<dynFnOnce(App) -> AppExit>;
introduces this limitation.
Compiler error:
error[E0277]: `(dyn FnOnce(App) -> AppExit + 'static)` cannot be sent between threads safely
--> base-init/src/lib.rs:133:28
|
133 | .spawn(move || manual_game_loop(game_app_handle))
| ----- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `(dyn FnOnce(App) -> AppExit + 'static)` cannot be sent between threads safely
| |
| required by a bound introduced by this call
|
= help: the trait `Send` is not implemented for `(dyn FnOnce(App) -> AppExit + 'static)`, which is required by `{closure@base-init/src/lib.rs:133:28: 133:35}: Send`
= note: required for `std::ptr::Unique<(dyn FnOnce(App) -> AppExit + 'static)>` to implement `Send`
note: required because it appears within the type `Box<(dyn FnOnce(App) -> AppExit + 'static)>`
--> .rustup/toolchains/nightly-x86_64-unknown-linux-gnu/lib/rustlib/src/rust/library/alloc/src/boxed.rs:238:12
|
238 | pub struct Box<
| ^^^
note: required because it appears within the type `App`
--> .cargo/registry/src/index.crates.io-6f17d22bba15001f/bevy_app-0.14.0/src/app.rs:70:12
|
70 | pub struct App {
| ^^^
= note: required for `Mutex<App>` to implement `Sync`
= note: 1 redundant requirement hidden
= note: required for `Arc<Mutex<App>>` to implement `Send`
Additional information
bevy_app::App / Plugins are a very great abstractions that can be used in wide variety of situations and this limits possible use.
The text was updated successfully, but these errors were encountered:
Bevy version
bevy 0.14
What you did
bevy 0.14 doesn't allow bevy_app::App to be sent between threads anymore.
What went wrong
Looks like RunnerFn:
introduces this limitation.
Compiler error:
Additional information
bevy_app::App / Plugins are a very great abstractions that can be used in wide variety of situations and this limits possible use.
The text was updated successfully, but these errors were encountered: