我正在试验这段代码:
foreach (var r in _vm.Rules.Take(20)) {
Task.Factory.StartNew(() => {
new SQLRuleSerializer().SaveRule(_vm.SelectedKey, r);
});
}
错误:
事务(进程 ID 600)与另一个进程在锁资源上死锁,并已被选为死锁牺牲品。重新运行事务。
考虑到我没有任何显式锁,我不确定这是如何死锁的。我想问题是序列化程序是一个代理,即使通过单独的实例也不能并行调用?