static void Main(string[] args) { UdoServer Svr = new UdoServer(); // udp 관련 옵션 설정을 위해 : StartOption의 디폴트 값을 그대로 사용해도 되지만 세부설정을 위해 별도 선언 ZNet.StartOption op = new ZNet.StartOption(); op.m_UdpPorts = new int[2]; // 서버에서 사용할 udp 포트 개수 op.m_UdpPorts[0] = 20004; // udp 포트 설정 op.m_UdpPorts[1] = 20005; // udp 포트 설정 ZNet.ResultInfo outResult = new ZNet.ResultInfo(); if (Svr.m_Core.Start(op, outResult)) { Console.WriteLine("Start Server ok. ver[{0}.{1:0000}]\n", Svr.m_Core.GetCoreVersion() / 10000, Svr.m_Core.GetCoreVersion() % 10000); Console.WriteLine("/Cmd: q(Quit) h(Help) stat(status info)\n"); } else { Console.WriteLine("Error Start... : {0} \n", outResult.msg); System.Threading.Thread.Sleep(1000 * 4); Svr.m_Core.Dispose(); return; } var ret = ReadLineAsync(); bool run_program = true; while (run_program) { if (ret.IsCompleted) { switch (ret.Result) { case "/h": Console.WriteLine("/Cmd: q(Quit) h(Help) stat(status info)"); break; case "/stat": ZNet.ServerState status; Svr.m_Core.GetCurrentState(out status); Console.WriteLine(string.Format("[NetInfo] Joined Client = {0}\n", status.m_JoinedClient)); break; case "/q": Console.WriteLine("quit Server..."); run_program = false; break; } if (run_program) { ret = ReadLineAsync(); } } System.Threading.Thread.Sleep(10); } Console.WriteLine("Start Closing... "); Svr.m_Core.Dispose(); Console.WriteLine("Close complete."); System.Threading.Thread.Sleep(1000 * 2); }
static void Main(string[] args) { UdoServer Svr = new UdoServer(); // udp 관련 옵션 설정을 위해 : StartOption의 디폴트 값을 그대로 사용해도 되지만 세부설정을 위해 별도 선언 ZNet.StartOption op = new ZNet.StartOption(); op.m_UdpPorts = new int[2]; // 서버에서 사용할 udp 포트 개수 op.m_UdpPorts[0] = 20004; // udp 포트 설정 op.m_UdpPorts[1] = 20005; // udp 포트 설정 ZNet.ResultInfo outResult = new ZNet.ResultInfo(); if (Svr.m_Core.Start(op, outResult)) { Console.WriteLine("Start Server ok. ver[{0}.{1:0000}]\n", Svr.m_Core.GetCoreVersion() / 10000, Svr.m_Core.GetCoreVersion() % 10000); Console.WriteLine("/Cmd: q(Quit) h(Help) stat(status info)\n"); } else { Console.WriteLine("Error Start... : {0} \n", outResult.msg); System.Threading.Thread.Sleep(1000 * 4); Svr.m_Core.Dispose(); return; } var ret = ReadLineAsync(); bool run_program = true; while (run_program) { if (ret.IsCompleted) { switch (ret.Result) { case "/h": Console.WriteLine("/Cmd: q(Quit) h(Help) stat(status info)"); break; case "/stat": ZNet.ServerState status; Svr.m_Core.GetCurrentState(out status); Console.WriteLine(string.Format("[NetInfo] Joined Client = {0}\n", status.m_JoinedClient)); break; case "/q": Console.WriteLine("quit Server..."); run_program = false; break; } if (run_program) ret = ReadLineAsync(); } System.Threading.Thread.Sleep(10); } Console.WriteLine("Start Closing... "); Svr.m_Core.Dispose(); Console.WriteLine("Close complete."); System.Threading.Thread.Sleep(1000 * 2); }