private void SendLoop() { // this blocks until new items are available foreach (var item in MessagesQueue.GetConsumingEnumerable()) { // ensure that you handle exceptions here, or whole thing will break on exception TcpIpMessageSenderClient.ConnectAndSendMessage(item.PadRight(80, ' ')); Thread.Sleep(2000); // only if you are sure this is required } }
public void SendMessageToTcpIP() { while (true) { messagesAvailableSignal.WaitOne(); while (!messageQueue.IsEmpty) { string message; if (messageQueue.TryDequeue(out message)) { TcpIpMessageSenderClient.ConnectAndSendMessage(message.PadRight(80, ' ')); } } } }