본문 바로가기

libevent

LibEvent For Windows Bug.. 아래 예제 코드는 간단한 에코 서버다. 스트레스 툴을 만들어서 십여개의 connexction을 생성한 후 일괄 close하면 메모리에러가 발생하면서 프로그램이 종료된다. 원인은 이벤트 구조체가 잘못된듯한다.. free부분을 제거하면 이러한 에러가 사라지기는 하지만 어떻게 그럴수가 있는가 -_-;; 결국 일주일간의 노력은 모두 물거품이 되어버렸다. 일단 멀티 스레드 서버로 프로젝트는 후다닥 진행해야겠다.. struct client { struct event ev_read; struct event ev_write; int id; }; int main(int argc, char **argv) { nametag = 0; timer = 0; Initialize(); Initialize_Net(); event_in.. 더보기
LibEvent for Windows 수많은 서버 입출력 모델중에 LibEvent란걸 선택하였다. 단지 누가 알려줘서!! 장점은 unix계열의 입출력 모델인 epoll 을 windows에서 사용할 수 있게 해준것이며 이것은 windows 와 linux 두 os에서 모두 동작하는 서버를 만들어야하는 나로써는 하나의 일을 줄일 수 있는 선택인것이다. 자 먼저 소스를 다운받아보자 http://www.monkey.org/~provos/libevent/ 요기 가면 소스를 다운받을 수 있다. 하지만 windows 사용자라면 소스를 다운받아서는 안된다. 열라 다운받아서 VS2005로 열라 돌렸는대 컴파일도 안되더라... 도통 개발 환경을 알 수 가 없다더라... 메인 화면 좌측 소스 list 맨아래 화면에 보면 Libevent has been relea.. 더보기