| 1009 | std::atomic_uint64_t s_httpClientRequestId{0}; |
| 1010 | |
| 1011 | static std::shared_ptr<HttpRequestState> register_http_client_request() { |
| 1012 | if (SharedHttpClient.isStopped()) { |
| 1013 | return nullptr; |
| 1014 | } |
| 1015 | std::lock_guard<std::mutex> lock(s_httpClientRequestMutex); |
| 1016 | if (SharedHttpClient.isStopped()) { |
| 1017 | return nullptr; |
| 1018 | } |
| 1019 | auto request = std::make_shared<HttpRequestState>(); |
| 1020 | request->id = s_httpClientRequestId.fetch_add(1, std::memory_order_relaxed) + 1; |
| 1021 | s_httpClientRequests.emplace(request->id, request); |
| 1022 | return request; |
| 1023 | } |
| 1024 | |
| 1025 | static void unregister_http_client_request(const std::shared_ptr<HttpRequestState>& request) { |
| 1026 | if (!request) { |
no test coverage detected