public void TakeFromQueue() { //Tager fra køen og sender til serveren while (true) { if (OutToServerQueue.Count != 0) { Console.WriteLine("Sending message"); ITranferable FromQueue = OutToServerQueue.Dequeue(); Message message = (Message)FromQueue; //Laver objektet om til en string String json = JsonConvert.SerializeObject(message); //Laver json string om til bytes og sender dem client.Network.Write(Encoding.UTF8.GetBytes(json), 0, json.Length); //13 er et linje skrift og aflutter linjen client.Network.WriteByte(13); //tømmer streamen client.Network.Flush(); } else { //hvis køen er tom sover tråden Console.WriteLine("Sleeping"); Thread.Sleep(2000); } } }
public void AddToQueue(ITranferable message) { OutToServerQueue.Enqueue(message); }