2个线程,一个接收,一个存数据库,前者速度快,感觉只有接收,没有存储
c#2个线程,一个线程接收数据,全部存到一个大数组里面
另外一个线程从大数据里面取数据存储到数据库
调试时:一般如果接收数据快,只有接收线程,没有存储线程。。如何处理啊
线程:while(true)
{
{ExeData...}
Thread.Sleep(100)
}
接收数据函数,和存到数据库函数应该没错,只是后者速度肯定慢于前者
------解决方案--------------------
很简单,用两个ManualResetEvent对象表示队列未满,和队列不空两个状态,
两个线程分别调用ManualResetEvent.WaitOne,成功后操作队列,并根据队列中是否有数据用Set/reset重新设置两个ManualResetEvent的状态,