@@ -116,6 +116,7 @@ namespace FREYR_NAMESPACE
116116
117117#endif // FREYR_PROFILING
118118 FREYR_PROFILING_BEGIN (" FREYR" , " Frame" , perfetto::Track (0 ), " TotalEntities" , mEntityManager ->LivingEntities ());
119+ mTaskManager ->StartWorkers ();
119120
120121 const auto provider = mServiceProvider .lock ()->CreateServiceScope ()->GetServiceProvider ();
121122
@@ -126,21 +127,18 @@ namespace FREYR_NAMESPACE
126127 while (mFixedDeltaTimeAccumulator >= mOptions ->FixedDeltaTime && steps < maxSteps)
127128 {
128129 FREYR_PROFILING_BEGIN (" FREYR" , " PreFixedUpdate" , perfetto::Track (0 ));
129- mTaskManager ->StartWorkers ();
130130 mSystemManager ->PreFixedUpdate (mOptions ->FixedDeltaTime , provider);
131131 mTaskManager ->WaitForAllTasks ();
132132 DestroyEntities ();
133133 FREYR_PROFILING_END (" FREYR" , perfetto::Track (0 ));
134134
135135 FREYR_PROFILING_BEGIN (" FREYR" , " FixedUpdate" , perfetto::Track (0 ));
136- mTaskManager ->StartWorkers ();
137136 mSystemManager ->FixedUpdate (mOptions ->FixedDeltaTime , provider);
138137 mTaskManager ->WaitForAllTasks ();
139138 DestroyEntities ();
140139 FREYR_PROFILING_END (" FREYR" , perfetto::Track (0 ));
141140
142141 FREYR_PROFILING_BEGIN (" FREYR" , " PostFixedUpdate" , perfetto::Track (0 ));
143- mTaskManager ->StartWorkers ();
144142 mSystemManager ->PostFixedUpdate (mOptions ->FixedDeltaTime , provider);
145143 mTaskManager ->WaitForAllTasks ();
146144 DestroyEntities ();
@@ -157,27 +155,25 @@ namespace FREYR_NAMESPACE
157155
158156 FREYR_PROFILING_BEGIN (" FREYR" , " PreUpdate" , perfetto::Track (0 ), " TotalEntities" ,
159157 mEntityManager ->LivingEntities ());
160- mTaskManager ->StartWorkers ();
161158 mSystemManager ->PreUpdate (deltaTime, provider);
162159 mTaskManager ->WaitForAllTasks ();
163160 DestroyEntities ();
164161 FREYR_PROFILING_END (" FREYR" , perfetto::Track (0 ));
165162
166163 FREYR_PROFILING_BEGIN (" FREYR" , " Update" , perfetto::Track (0 ));
167- mTaskManager ->StartWorkers ();
168164 mSystemManager ->Update (deltaTime, provider);
169165 mTaskManager ->WaitForAllTasks ();
170166 DestroyEntities ();
171167 FREYR_PROFILING_END (" FREYR" , perfetto::Track (0 ));
172168
173169 FREYR_PROFILING_BEGIN (" FREYR" , " PostUpdate" , perfetto::Track (0 ));
174- mTaskManager ->StartWorkers ();
175170 mSystemManager ->PostUpdate (deltaTime, provider);
176171 mTaskManager ->WaitForAllTasks ();
177172 DestroyEntities ();
178173 FREYR_PROFILING_END (" FREYR" , perfetto::Track (0 ));
179174
180175 FREYR_PROFILING_END (" FREYR" , perfetto::Track (0 ));
176+ mTaskManager ->StopWorkers ();
181177 }
182178
183179 void Scene::DestroyEntities ()
0 commit comments