#include <event2/event.h>
#include <iostream>
#include <string.h>
using namespace std;
#define SPORT 8080
#ifdef _WIN32
#pragma comment(lib,"ws2_32.lib")
#pragma comment(lib,"libevent.lib")
#else
#include <signal.h>
#endif
int main()
{
#ifdef _WIN32
//初始化socket库
WSADATA wsa;
WSAStartup(MAKEWORD(2, 2), &wsa);
#else
//忽略管道信号,发送数据给已经关闭的socket
if (signal(SIGPIPE, SIG_IGN) == SIG_ERR)
return -1;
#endif
//创建配置上下文
event_config* conf = event_config_new();
//查看支持的网络模式
const char **methods=event_get_supported_methods();
cout << "supproted methods:" << endl;
for (int i = 0; methods[i]; i++)
{
cout << methods[i] << endl;
}
//初始化libevent的配置上下文
event_base *base=event_base_new_with_config(conf);
event_config_free(conf);
if (!base)
{
cerr << "event_base_new_with_config failed!" << endl;
}
else
{
cout << "event_base_new_with_config success !" << endl;
event_base_free(base);
}
#ifdef _WIN32
WSACleanup();
#endif
return 0;
}
window下
linux下