标签: .net concurrency thread-safety task parallel.foreach
我正在创建一个Windows服务,该服务每隔1秒调用一次方法。 该方法是从数据库中获取记录并按优先级进行过滤,并创建3个不同的任务来执行某些操作。每个任务都具有 Parallel.ForEach 循环,以更新数据库中的每个记录状态而无需锁定并将其插入到公共缓存列表中内部锁定< / strong>。有时在处理20000条记录时,缺少更新到表中的10到20条记录。接下来的提取和处理继续,但是这些线程永远不会执行。我缺少什么?请帮帮我。