MCPcopy Create free account
hub / github.com/SakuraEngine/SakuraEngine / complete_

Method complete_

modules/engine/runtime/src/io/common/io_runner.cpp:363–381  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

361}
362
363bool RunnerBase::complete_(IIORequest* rq, SkrAsyncServicePriority priority) SKR_NOEXCEPT
364{
365 if (auto pStatus = io_component<IOStatusComponent>(rq))
366 {
367 SKR_ASSERT(pStatus->getStatus() == SKR_IO_STAGE_LOADED);
368 pStatus->setStatus(SKR_IO_STAGE_COMPLETED);
369 if (pStatus->needPollFinish())
370 {
371 finish_queues[priority].enqueue(rq);
372 pStatus->setFinishStep(SKR_ASYNC_IO_FINISH_STEP_WAIT_CALLBACK_POLLING);
373 }
374 else
375 {
376 pStatus->setFinishStep(SKR_ASYNC_IO_FINISH_STEP_DONE);
377 }
378 skr_atomic64_add_relaxed(&processing_request_counts[priority], -1);
379 }
380 return true;
381}
382
383} // namespace io
384} // namespace skr

Callers

nothing calls this directly

Calls 4

skr_atomic64_add_relaxedFunction · 0.85
getStatusMethod · 0.80
setStatusMethod · 0.45
enqueueMethod · 0.45

Tested by

no test coverage detected