public bool HasItemsFromPropertySet(InfoItemPropertySet propertySet,CompositeInfoItem itemRemoved) { var itemAndSubItems = new InfoItemCollection(); if (itemRemoved != null) { itemAndSubItems.Add(itemRemoved); //foreach (InfoItem item in itemRemoved.AllDescendants) itemAndSubItems.AddRange(itemRemoved.AllDescendants); } return AllItems.AsParallel().Any(item => item.PropertySet == propertySet && !itemAndSubItems.Contains(item)); }
在我的代码中,我使用AsParallel().Any()
如何获取AsParellel.Any()生成的线程的线程ID …
解决方法
Thread.CurrentThread.ManagedThreadId
获取当前正在执行的线程的托管线程ID.
如果你想获得原生线程ID(不是你通常想做的事情),你可以调用方法AppDomain.GetCurrentThreadId()
(已废弃“因为当托管线程在光纤上运行时它不提供稳定的ID”但据我所知托管线程仅在sql Server内的光纤上运行.