[ Web Proxy ]
URL:
Viewing: https://raw.githubusercontent.com/cpp-redis/cpp_redis/develop/examples/winsock_initializer.h [Back]  [Original]

#ifndef CPP_REDIS_WINSOCK_INITIALIZER_H_
#define CPP_REDIS_WINSOCK_INITIALIZER_H_

#ifdef _WIN32
#include 
#include 

class winsock_initializer {
public:
  winsock_initializer() {
    //! Windows network DLL init
    WORD version = MAKEWORD(2, 2);
    WSADATA data;

    if (WSAStartup(version, &data) != 0) {
      throw std::runtime_error("WSAStartup() failure");
    }
  }
  ~winsock_initializer() { WSACleanup(); }
};

#define WINSOCK_INITIALIZER() winsock_initializer winsock_init;
#else
class winsock_initializer {};
#define WINSOCK_INITIALIZER()
#endif /* _WIN32 */

#endif // !CPP_REDIS_WINSOCK_INITIALIZER_H_

Web Proxy Viewer  |  New URL  |  Original Page