Skip to content

Commit 88331ca

Browse files
author
Michael Hsu
committed
change Arc to immutable reference
1 parent ffe2c95 commit 88331ca

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

crates/bevy_tasks/src/single_threaded_task_pool.rs

+5-2
Original file line numberDiff line numberDiff line change
@@ -67,9 +67,12 @@ impl TaskPool {
6767
let executor: &'env async_executor::LocalExecutor<'env> =
6868
unsafe { mem::transmute(executor) };
6969

70+
let results: Mutex<Vec<Arc<Mutex<Option<T>>>>> = Mutex::new(Vec::new());
71+
let results: &'env Mutex<Vec<Arc<Mutex<Option<T>>>>> = unsafe { mem::transmute(&results) };
72+
7073
let mut scope = Scope {
7174
executor,
72-
results: Arc::new(Mutex::new(Vec::new())),
75+
results,
7376
scope: PhantomData,
7477
};
7578

@@ -126,7 +129,7 @@ impl FakeTask {
126129
pub struct Scope<'scope, 'env: 'scope, T> {
127130
executor: &'env async_executor::LocalExecutor<'env>,
128131
// Vector to gather results of all futures spawned during scope run
129-
results: Arc<Mutex<Vec<Arc<Mutex<Option<T>>>>>>,
132+
results: &'env Mutex<Vec<Arc<Mutex<Option<T>>>>>,
130133
scope: PhantomData<&'scope ()>,
131134
}
132135

0 commit comments

Comments
 (0)