我正在使用ThreadPool来排队1000个工作项
While(reading in data for processing) { args = some data that has been read; ThreadPool.QueueUserWorkItem(new WaitCallback(threadRunner),args); }
然而,这非常有效,因为主线程将请求排队的速度比处理内存的速度慢得多.
我希望做一些类似于以下内容的事情,以便在队列增长时限制排队
Thread.Sleep(numberOfItemsCurrentlyQueued);
随着队列的增长,这会导致更长的等待时间.
有没有办法发现队列中有多少项?