using System.Threading; public class ResponseAdapter { static Thread Receiver; static TTCN3.TriPortId PortId; static TTCN3.TriComponentId ComponentId; public static void SwitchOn(TTCN3.TriPortId pid, TTCN3.TriComponentId cid) { PortId = pid; ComponentId = cid; Receiver = new Thread( new ThreadStart(ReceiverBehaviour) ); Receiver.Start(); } public static void SwitchOff() { Receiver.Abort(); } private static void ReceiverBehaviour() { while(true) { while(CoffeeMachine.Output.Count == 0) Thread.Sleep(100); byte[] bytes = CoffeeMachine.Output.Dequeue(); TTCN3.TriMessage msg = new TTCN3.TriMessage(); msg.setEncodedMessage(bytes); TTCN3.ToTestSystem.triEnqueueMsg (PortId, null, ComponentId, msg); } } }