示例#1
0
文件: Data.cs 项目: haiyueh/Projects
 /// <summary>
 /// Data queue event handler
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="d"></param>
 public void QueueData(object sender, DataQueueObject d)
 {
     lock (_lock) {
         _dataQueue.Enqueue(d);
     }
     _reset.Set();
 }
示例#2
0
文件: Data.cs 项目: haiyueh/Projects
 /// <summary>
 /// Function for creating new documents
 /// </summary>
 /// <param name="d"></param>
 private void HandleDataEvent(DataQueueObject d)
 {
     switch (d.Type)
     {
     case DataQueueObject.DataType.CycleData:
         if (!(d.Data is CCDataPoint p))
         {
             return;
         }
         SaveCCData(p);
         break;
     }
 }
示例#3
0
文件: Data.cs 项目: haiyueh/Projects
 private void DataWorker_DoWork(object sender, DoWorkEventArgs e)
 {
     while (true)
     {
         DataQueueObject d = null;
         lock (_lock) {
             if (_dataQueue.Count > 0)
             {
                 d = _dataQueue.Dequeue();
             }
         }
         if (d == null)
         {
             _reset.WaitOne(5000);
             continue;
         }
         HandleDataEvent(d);
     }
 }