| 1884 | } |
| 1885 | |
| 1886 | static void runtime_worker_reset_after_join(cbm_daemon_runtime_worker_t *worker) { |
| 1887 | free(worker->application_request); |
| 1888 | worker->thread_started = false; |
| 1889 | worker->in_use = false; |
| 1890 | worker->joining = false; |
| 1891 | worker->connection = NULL; |
| 1892 | worker->client_id = CBM_DAEMON_CLIENT_ID_INVALID; |
| 1893 | worker->peer_process_id = 0; |
| 1894 | worker->admitted = false; |
| 1895 | worker->admission_committed = false; |
| 1896 | worker->final_response_inflight = false; |
| 1897 | worker->application_session = NULL; |
| 1898 | worker->application_session_opened = false; |
| 1899 | worker->application_cancelled = false; |
| 1900 | worker->application_thread_started = false; |
| 1901 | worker->application_request_token = CBM_DAEMON_RUNTIME_APPLICATION_TOKEN_INVALID; |
| 1902 | worker->last_application_request_token = CBM_DAEMON_RUNTIME_APPLICATION_TOKEN_INVALID; |
| 1903 | worker->application_request = NULL; |
| 1904 | worker->application_request_length = 0; |
| 1905 | atomic_store_explicit(&worker->done, false, memory_order_release); |
| 1906 | atomic_store_explicit(&worker->disconnecting, false, memory_order_release); |
| 1907 | atomic_store_explicit(&worker->application_thread_done, false, memory_order_release); |
| 1908 | } |
| 1909 | |
| 1910 | static void runtime_reap_completed_workers(cbm_daemon_runtime_service_t *service) { |
| 1911 | for (size_t i = 0; i < service->worker_capacity; i++) { |
no outgoing calls
no test coverage detected