From 4f1044aa4e9d90b498c35b710884d54d52c4e5c7 Mon Sep 17 00:00:00 2001 From: BlackMATov Date: Tue, 2 Jul 2019 05:31:28 +0700 Subject: [PATCH] change timeout resolution to milliseconds --- headers/curly.hpp/curly.hpp | 18 +++++++++--------- sources/curly.cpp | 24 ++++++++++++------------ 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/headers/curly.hpp/curly.hpp b/headers/curly.hpp/curly.hpp index ca7d650..2d150f4 100644 --- a/headers/curly.hpp/curly.hpp +++ b/headers/curly.hpp/curly.hpp @@ -184,9 +184,9 @@ namespace curly_hpp request_builder& verbose(bool v) noexcept; request_builder& verification(bool v) noexcept; request_builder& redirections(std::uint32_t r) noexcept; - request_builder& request_timeout(time_sec_t t) noexcept; - request_builder& response_timeout(time_sec_t t) noexcept; - request_builder& connection_timeout(time_sec_t t) noexcept; + request_builder& request_timeout(time_ms_t t) noexcept; + request_builder& response_timeout(time_ms_t t) noexcept; + request_builder& connection_timeout(time_ms_t t) noexcept; request_builder& content(std::string_view b); request_builder& content(content_t b) noexcept; @@ -201,9 +201,9 @@ namespace curly_hpp bool verbose() const noexcept; bool verification() const noexcept; std::uint32_t redirections() const noexcept; - time_sec_t request_timeout() const noexcept; - time_sec_t response_timeout() const noexcept; - time_sec_t connection_timeout() const noexcept; + time_ms_t request_timeout() const noexcept; + time_ms_t response_timeout() const noexcept; + time_ms_t connection_timeout() const noexcept; content_t& content() noexcept; const content_t& content() const noexcept; @@ -243,9 +243,9 @@ namespace curly_hpp bool verbose_{false}; bool verification_{false}; std::uint32_t redirections_{10u}; - time_sec_t request_timeout_{~0u}; - time_sec_t response_timeout_{60u}; - time_sec_t connection_timeout_{20u}; + time_ms_t request_timeout_{time_sec_t{~0u}}; + time_ms_t response_timeout_{time_sec_t{60u}}; + time_ms_t connection_timeout_{time_sec_t{20u}}; private: content_t content_; callback_t callback_; diff --git a/sources/curly.cpp b/sources/curly.cpp index 0abece3..c5d4d80 100644 --- a/sources/curly.cpp +++ b/sources/curly.cpp @@ -401,14 +401,14 @@ namespace curly_hpp curl_easy_setopt(curlh_.get(), CURLOPT_FOLLOWLOCATION, 0l); } - curl_easy_setopt(curlh_.get(), CURLOPT_TIMEOUT, - static_cast(std::max(time_sec_t(1), breq_.request_timeout()).count())); + curl_easy_setopt(curlh_.get(), CURLOPT_TIMEOUT_MS, + static_cast(std::max(time_ms_t(1), breq_.request_timeout()).count())); - curl_easy_setopt(curlh_.get(), CURLOPT_CONNECTTIMEOUT, - static_cast(std::max(time_sec_t(1), breq_.connection_timeout()).count())); + curl_easy_setopt(curlh_.get(), CURLOPT_CONNECTTIMEOUT_MS, + static_cast(std::max(time_ms_t(1), breq_.connection_timeout()).count())); last_response_ = time_point_t::clock::now(); - response_timeout_ = std::max(time_sec_t(1), breq_.response_timeout()); + response_timeout_ = std::max(time_ms_t(1), breq_.response_timeout()); if ( CURLM_OK != curl_multi_add_handle(curlm, curlh_.get()) ) { throw exception("curly_hpp: failed to curl_multi_add_handle"); @@ -636,7 +636,7 @@ namespace curly_hpp const std::size_t written_bytes = breq_.downloader()->write(src, size); downloaded_ += written_bytes; - + return written_bytes; } catch (...) { return 0u; @@ -801,17 +801,17 @@ namespace curly_hpp return *this; } - request_builder& request_builder::request_timeout(time_sec_t t) noexcept { + request_builder& request_builder::request_timeout(time_ms_t t) noexcept { request_timeout_ = t; return *this; } - request_builder& request_builder::response_timeout(time_sec_t t) noexcept { + request_builder& request_builder::response_timeout(time_ms_t t) noexcept { response_timeout_ = t; return *this; } - request_builder& request_builder::connection_timeout(time_sec_t t) noexcept { + request_builder& request_builder::connection_timeout(time_ms_t t) noexcept { connection_timeout_ = t; return *this; } @@ -865,15 +865,15 @@ namespace curly_hpp return redirections_; } - time_sec_t request_builder::request_timeout() const noexcept { + time_ms_t request_builder::request_timeout() const noexcept { return request_timeout_; } - time_sec_t request_builder::response_timeout() const noexcept { + time_ms_t request_builder::response_timeout() const noexcept { return response_timeout_; } - time_sec_t request_builder::connection_timeout() const noexcept { + time_ms_t request_builder::connection_timeout() const noexcept { return connection_timeout_; }