现在做了个测试数据的程序,首先程序一直在接收数据,通过在构造函数中调用接收函数并存在一个数组中,接收速度也较快:然后我在选择了测试项目后就得根据所得到的数据进行判断分析,问题是总得不到数据,请问怎么解决啊各位?这跟他们之间参数传递有关吧?
多谢

解决方案 »

  1.   

    你写了个类,保存了数据库的值
    你可以不写构造函数,因为当你值多的时候,调用的时候容易出错
    你直接对象.属性取值,肯定不会错,错了那是你SQL语句错误!~
      

  2.   

    关于C#中timer类  在C#里关于定时器类就有3个   
    1.定义在System.Windows.Forms里   
    2.定义在System.Threading.Timer类里   
    3.定义在System.Timers.Timer类里  
    你那个 建议用第二种。下面是msdn 的例子。你读到的数据在CheckStatus()这个方法中运行。不用写什么事件,它是个回调函数 TimerCallback。using System;
    using System.Threading;class TimerExample
    {
        static void Main()
        {
            AutoResetEvent autoEvent     = new AutoResetEvent(false);
            StatusChecker  statusChecker = new StatusChecker(10);        // Create the delegate that invokes methods for the timer.
            TimerCallback timerDelegate = 
                new TimerCallback(statusChecker.CheckStatus);        // Create a timer that signals the delegate to invoke 
            // CheckStatus after one second, and every 1/4 second 
            // thereafter.
            Console.WriteLine("{0} Creating timer.\n", 
                DateTime.Now.ToString("h:mm:ss.fff"));
            Timer stateTimer = 
                    new Timer(timerDelegate, autoEvent, 1000, 250);        // When autoEvent signals, change the period to every 
            // 1/2 second.
            autoEvent.WaitOne(5000, false);
            stateTimer.Change(0, 500);
            Console.WriteLine("\nChanging period.\n");        // When autoEvent signals the second time, dispose of 
            // the timer.
            autoEvent.WaitOne(5000, false);
            stateTimer.Dispose();
            Console.WriteLine("\nDestroying timer.");
        }
    }class StatusChecker
    {
        int invokeCount, maxCount;    public StatusChecker(int count)
        {
            invokeCount  = 0;
            maxCount = count;
        }    // This method is called by the timer delegate.
        public void CheckStatus(Object stateInfo)
        {
            AutoResetEvent autoEvent = (AutoResetEvent)stateInfo;
            Console.WriteLine("{0} Checking status {1,2}.", 
                DateTime.Now.ToString("h:mm:ss.fff"), 
                (++invokeCount).ToString());        if(invokeCount == maxCount)
            {
                // Reset the counter and signal Main.
                invokeCount  = 0;
                autoEvent.Set();
            }
        }
    }
      

  3.   

    谢谢各位,我这个主要是使用CAN卡不停地获取总线上的数据,
    并按测试人员的需要不定时地选择测试项目进行测试
    我先试试,谢谢各位了