diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt index 14eb8e1e..5e921dd2 100644 --- a/examples/CMakeLists.txt +++ b/examples/CMakeLists.txt @@ -24,7 +24,7 @@ # compilation options ### IF (NOT WIN32) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pthread -std=c++11") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") ENDIF (NOT WIN32) @@ -60,3 +60,22 @@ target_link_libraries(cpp_redis_kill cpp_redis) add_executable(cpp_redis_high_availability_client cpp_redis_high_availability_client.cpp) target_link_libraries(cpp_redis_high_availability_client cpp_redis) + +### +# link libs +### +IF (WIN32) + target_link_libraries(cpp_redis_client ws2_32) + target_link_libraries(cpp_redis_future_client ws2_32) + target_link_libraries(cpp_redis_subscriber ws2_32) + target_link_libraries(cpp_redis_logger ws2_32) + target_link_libraries(cpp_redis_kill ws2_32) + target_link_libraries(cpp_redis_high_availability_client ws2_32) +ELSE () + target_link_libraries(cpp_redis_client pthread) + target_link_libraries(cpp_redis_future_client pthread) + target_link_libraries(cpp_redis_subscriber pthread) + target_link_libraries(cpp_redis_logger pthread) + target_link_libraries(cpp_redis_kill pthread) + target_link_libraries(cpp_redis_high_availability_client pthread) +ENDIF (WIN32) diff --git a/includes/cpp_redis/core/client.hpp b/includes/cpp_redis/core/client.hpp index e6f9071d..db7823cc 100644 --- a/includes/cpp_redis/core/client.hpp +++ b/includes/cpp_redis/core/client.hpp @@ -1091,11 +1091,11 @@ class client { //! //! reconnection status //! - std::atomic_bool m_reconnecting = ATOMIC_VAR_INIT(false); + std::atomic_bool m_reconnecting; //! //! to force cancel reconnection //! - std::atomic_bool m_cancel = ATOMIC_VAR_INIT(false); + std::atomic_bool m_cancel; //! //! sent commands waiting to be executed @@ -1120,7 +1120,7 @@ class client { //! //! number of callbacks currently being running //! - std::atomic m_callbacks_running = ATOMIC_VAR_INIT(0); + std::atomic m_callbacks_running; }; // namespace cpp_redis } // namespace cpp_redis diff --git a/includes/cpp_redis/core/sentinel.hpp b/includes/cpp_redis/core/sentinel.hpp index 11224a3c..51b64405 100644 --- a/includes/cpp_redis/core/sentinel.hpp +++ b/includes/cpp_redis/core/sentinel.hpp @@ -303,7 +303,7 @@ class sentinel { //! //! number of callbacks currently being running //! - std::atomic m_callbacks_running = ATOMIC_VAR_INIT(0); + std::atomic m_callbacks_running; }; }; // namespace cpp_redis diff --git a/includes/cpp_redis/core/subscriber.hpp b/includes/cpp_redis/core/subscriber.hpp index e77f149f..2c9ceca5 100644 --- a/includes/cpp_redis/core/subscriber.hpp +++ b/includes/cpp_redis/core/subscriber.hpp @@ -409,11 +409,11 @@ class subscriber { //! //! reconnection status //! - std::atomic_bool m_reconnecting = ATOMIC_VAR_INIT(false); + std::atomic_bool m_reconnecting; //! //! to force cancel reconnection //! - std::atomic_bool m_cancel = ATOMIC_VAR_INIT(false); + std::atomic_bool m_cancel; //! //! subscribed channels and their associated channels diff --git a/sources/core/client.cpp b/sources/core/client.cpp index f78d2e26..69ce4a4a 100644 --- a/sources/core/client.cpp +++ b/sources/core/client.cpp @@ -26,13 +26,19 @@ namespace cpp_redis { #ifndef __CPP_REDIS_USE_CUSTOM_TCP_CLIENT -client::client(void) { +client::client(void) +: m_reconnecting(false) +, m_cancel(false) +, m_callbacks_running(0) { __CPP_REDIS_LOG(debug, "cpp_redis::client created"); } #endif /* __CPP_REDIS_USE_CUSTOM_TCP_CLIENT */ client::client(const std::shared_ptr& tcp_client) -: m_client(tcp_client) { +: m_client(tcp_client) +, m_reconnecting(false) +, m_cancel(false) +, m_callbacks_running(0) { __CPP_REDIS_LOG(debug, "cpp_redis::client created"); } diff --git a/sources/core/sentinel.cpp b/sources/core/sentinel.cpp index d3c79252..8eaac600 100644 --- a/sources/core/sentinel.cpp +++ b/sources/core/sentinel.cpp @@ -29,13 +29,15 @@ namespace cpp_redis { #ifndef __CPP_REDIS_USE_CUSTOM_TCP_CLIENT -sentinel::sentinel(void) { +sentinel::sentinel(void) +: m_callbacks_running(0) { __CPP_REDIS_LOG(debug, "cpp_redis::sentinel created"); } #endif /* __CPP_REDIS_USE_CUSTOM_TCP_CLIENT */ sentinel::sentinel(const std::shared_ptr& tcp_client) -: m_client(tcp_client) { +: m_client(tcp_client) +, m_callbacks_running(0) { __CPP_REDIS_LOG(debug, "cpp_redis::sentinel created"); } diff --git a/sources/core/subscriber.cpp b/sources/core/subscriber.cpp index aa6ec675..e9e195d4 100644 --- a/sources/core/subscriber.cpp +++ b/sources/core/subscriber.cpp @@ -28,14 +28,18 @@ namespace cpp_redis { #ifndef __CPP_REDIS_USE_CUSTOM_TCP_CLIENT subscriber::subscriber(void) -: m_auth_reply_callback(nullptr) { +: m_auth_reply_callback(nullptr) +, m_reconnecting(false) +, m_cancel(false) { __CPP_REDIS_LOG(debug, "cpp_redis::subscriber created"); } #endif /* __CPP_REDIS_USE_CUSTOM_TCP_CLIENT */ subscriber::subscriber(const std::shared_ptr& tcp_client) : m_client(tcp_client) -, m_auth_reply_callback(nullptr) { +, m_auth_reply_callback(nullptr) +, m_reconnecting(false) +, m_cancel(false) { __CPP_REDIS_LOG(debug, "cpp_redis::subscriber created"); }