diff options
| author | untodesu <kirill@untode.su> | 2025-03-23 12:46:10 +0500 |
|---|---|---|
| committer | untodesu <kirill@untode.su> | 2025-03-23 12:46:10 +0500 |
| commit | b2d4a09a5621e214636593641d9799b2b1cdcf72 (patch) | |
| tree | fff28fa3816430a98efa1eabee82f22547f2056e /game | |
| parent | ef14e799b1ad590d42204f1c435915c4dc25bb9f (diff) | |
| download | voxelius-b2d4a09a5621e214636593641d9799b2b1cdcf72.tar.bz2 voxelius-b2d4a09a5621e214636593641d9799b2b1cdcf72.zip | |
Slightly refactor threading API
- Hide away threading::submit overload that is meant to only be used
with either a task that has been allocated using "new" or using a
templated overload. Now it's called threading::detail::submit_new
- Removed an unnecessary status check in mesher's Task::finalize impl
Diffstat (limited to 'game')
| -rw-r--r-- | game/client/chunk_mesher.cc | 7 | ||||
| -rw-r--r-- | game/shared/threading.cc | 2 | ||||
| -rw-r--r-- | game/shared/threading.hh | 8 |
3 files changed, 7 insertions, 10 deletions
diff --git a/game/client/chunk_mesher.cc b/game/client/chunk_mesher.cc index 011d6a7..7e185f1 100644 --- a/game/client/chunk_mesher.cc +++ b/game/client/chunk_mesher.cc @@ -161,13 +161,6 @@ void GL_MeshingTask::finalize(void) return; } - if(m_status == task_status::CANCELLED) { - // The task has been cancelled, the result - // should be invalidated, if the code even got - // to this point (it normally should not) - return; - } - auto &component = globals::dimension->chunks.emplace_or_replace<ChunkMeshComponent>(m_entity); const std::size_t plane_count_nb = m_quads_s.size(); diff --git a/game/shared/threading.cc b/game/shared/threading.cc index 7e6f652..71c30e1 100644 --- a/game/shared/threading.cc +++ b/game/shared/threading.cc @@ -99,7 +99,7 @@ void threading::update(void) } } -void threading::submit(Task *task) +void threading::detail::submit_new(Task *task) { task->set_status(task_status::ENQUEUED); diff --git a/game/shared/threading.hh b/game/shared/threading.hh index e143f4f..083ccbf 100644 --- a/game/shared/threading.hh +++ b/game/shared/threading.hh @@ -28,9 +28,13 @@ namespace threading void init(void); void deinit(void); void update(void); -void submit(Task *task); } // namespace threading +namespace threading::detail +{ +void submit_new(Task *task); +} // namespace threading::detail + namespace threading { template<typename T, typename... AT> @@ -40,7 +44,7 @@ void submit(AT &&... args); template<typename T, typename... AT> inline void threading::submit(AT &&... args) { - threading::submit(new T(args...)); + threading::detail::submit_new(new T(args...)); } #endif /* SHARED_THREADING_HH */ |
