/// <summary> /// there are four steps for the server /// (1) read xml to get necessary information /// (2)initalize a new world and add info to the new world /// (3)uisng serverawaitClientloop to awit client join in /// (4)using update method to send update info to the client /// </summary> /// <param name="args"></param> static void Main(string[] args) { xmlRead(); watch = new Stopwatch(); list = new LinkedList <SocketState>(); watch.Start(); liveStar = new Stopwatch(); liveStar.Start(); theworld = new world(); sta.setLoc(new Vector2D(200, -200)); star ss = new star(1, new Vector2D(200, 200), 0.01); theworld.addStar(sta); theworld.addStar(ss); theworld.setSize(UniverSize); theworld.setRespawn(RespawnRate); theworld.setFrame(MSperFrame); NController.ServerAwaitClientLoop(HandleNewClient); Console.WriteLine("our server start, and client could join in now"); //create a new thread to update the world and send the updated info to the client Task task = new Task(() => { while (true) { update(); } }); task.Start(); Console.Read(); }