| 361 | } |
| 362 | |
| 363 | bool 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 |
nothing calls this directly
no test coverage detected