| 488 | |
| 489 | /// |
| 490 | s32 run() |
| 491 | { |
| 492 | while (!_exit.load()) { |
| 493 | _mutex.lock(); |
| 494 | while (!_exit.load() && _requests_queue.empty()) |
| 495 | _requests_condition.wait(_mutex); |
| 496 | _mutex.unlock(); |
| 497 | |
| 498 | u32 idx; |
| 499 | while (!_exit.load() && _requests_queue.pop(idx)) { |
| 500 | CE_ENSURE(idx < countof(_requests)); |
| 501 | process_request(_requests[idx]); |
| 502 | } |
| 503 | } |
| 504 | |
| 505 | return 0; |
| 506 | } |
| 507 | }; |
| 508 | |
| 509 | namespace save_game |