|
MayaFlux 1.0.0
Digital-First Multimedia Processing Framework
|
|
private |
Retain a save task in m_save_tasks and opportunistically reclaim finished ones.
Lock-free: delegates to Parallel::AsyncGroup, which never blocks one caller on another's future. Failed saves are logged through the group's exception handler set up in the constructor, which reuses Journal::error_rethrow for the catch(const std::exception&) vs catch(...) message dispatch and then swallows the rethrow, since AsyncGroup's contract is to report a task's exception, not propagate it into whichever thread happens to call submit()/drain() next. Nothing about a task's own work (already running on its own thread via std::async before this is called) is affected by tracking it here.
Definition at line 972 of file IOManager.cpp.
References m_save_tasks, and MayaFlux::Parallel::AsyncGroup< T >::submit().
Referenced by save_image(), save_image(), save_mesh(), save_mesh(), save_mesh(), save_mesh(), save_mesh_snapshot(), save_spatial_snapshot(), save_volume(), save_volume(), stop_audio_capture(), stop_video_capture(), and write().
Here is the call graph for this function:
Here is the caller graph for this function: