카테고리 없음

문제점을 찾은듯...

카샬 2012. 7. 20. 18:02

역시 DB의 연결이 중간에 끈어져서 발생하는 에러였다.


'Lost connection to MySQL server during query'


란 에러 메시지가 떠서 검색해보니 


set wait_timeout = 0;


으로 해주면 연결이 끊어지지 않는다고 해서


바꿔주니 다행이 이제 그 에러는 안뜬다.



명령어 입력 모습...


그런데 워닝이 하나 있는데 뭔지 모르겠다;;


그리고 select * from user; 명령어를 실행했더니


에러가 뜨는데;;;


별다른 문제 없이 테이블은 검색된다?


이건 해결했는데 또다른 문제가 있다ㅠㅠ;


첫번째 회원가입때 메시지는 잘 들어가지만


두번째 로그인 메시지는 안들어온다...


아마도 


switch(ptr->state)

{

case WAIT : // 처음 접속 및 이벤트가 없을때 대기 상태

UserWait(&(*ptr));

break;

case JOIN : // 회원 가입

UserJoin(&(*ptr));

ptr->state = WAIT;

break;

case LOGIN : // 로그인

UserLogin(&(*ptr));

ptr->state = WAIT;

break;

}


// 수신 받는 부분이 뒤에 있어서 메시지가 초기화가 되는 듯 하다...

// 스위치문을 앞으로 변경해봐야 될듯...

// 월요일날 수정 요망


ZeroMemory(&(ptr->overlapped), sizeof(ptr->overlapped));

ZeroMemory(ptr->buf, BUFSIZE);


ptr->wsabuf.buf = ptr->buf;

ptr->wsabuf.len = BUFSIZE;


retval = WSARecv(ptr->sock, &(ptr->wsabuf), 1, &recvbytes,

&flags, &(ptr->overlapped), NULL);

if(retval == SOCKET_ERROR)

{

if(WSAGetLastError() != WSA_IO_PENDING)

{

err_display("WSARecv()");

RemoveSocketInfo(ptr);

}

}