public static void InitializeServer() { int startTime = 0; int endTime = 0; startTime = GetTickCount(); LogManager.WriteLog("서버 구동을 시작합니다!"); LogManager.WriteLog("게임 데이터 초기화를 시작합니다 ..."); Network.InitializeClients(); LogManager.WriteLog("서버 구축을 시작합니다 ..."); NetworkHandleData.InitializePackets(); Network.InitializeNetwork(); endTime = GetTickCount(); LogManager.WriteInfo("서버 초기화가 끝났습니다. 소요시간: " + (endTime - startTime) + "ms"); }
private void OnReceiveData(IAsyncResult result) { try { int readbytes = myStream.EndRead(result); if (readbytes <= 0) { // 서버와의 접속이 끊긴 경우 CloseSocket(); return; } byte[] newBytes = new byte[readbytes]; Buffer.BlockCopy(readBuff, 0, newBytes, 0, readbytes); NetworkHandleData.HandleData(connectionID, newBytes); myStream.BeginRead(readBuff, 0, socket.ReceiveBufferSize, OnReceiveData, null); } catch (Exception) { CloseSocket(); } }