Example #1
0
 public void SendResponses(SendResponseDelegate del)
 {
     while (true)
     {
         ThreadTask <T> response;
         lock (ResponsesLock)
         {
             if (Responses.Count == 0)
             {
                 break;
             }
             response = Responses.Dequeue();
         }
         Output($"Dequeued response... {response.State}");
         if (response.State == ThreadTask <T> .ThreadTaskState.Responded)
         {
             Output("Sending response");
             del(response);
             Output("Sent response");
         }
     }
 }
Example #2
0
        public KTASimulator()
        {
            Name = "KTSIM";
            m_ID = "KTSIM";
            m_Tag = "";

            log.Info(Name + " Created");

            m_SRDelegate = new SendResponseDelegate(this.handleResponse);

            m_OrderContextOrdID = new Dictionary<string, DriverBase.OrderContext>();
            //m_OrderContextClOrdID = new Dictionary<string, DriverBase.OrderContext>();
            m_Markets = new Dictionary<string, Market>();
            m_FillList = new List<DriverBase.OrderContext>();
            genSampleConfig();

            _products = new Dictionary<string, SimulatorProduct>();

            m_RNGen = new Random();

            _filePrices = new Dictionary<string, FilePriceSource>();

            m_MainForm = new SimulatorMainUI();

            m_MainForm.Simulator = this;
        }
 public ServiceRecievedRequestEventArgs(T req, SendResponseDelegate <U> sendResponseFunc)
 {
     SendResponseFunc = sendResponseFunc;
     request          = req;
 }