示例#1
0
        public static IEnumerable <BaseMulti> GetEnumeratedMultis(this Region region)
        {
            List <BaseMulti>        list = region.GetMultis();
            IEnumerable <BaseMulti> e;

            lock (_MultiLock)
            {
                e = list.AsParallel().Where(m => m != null && m.GetRegion().IsPartOf(region));
            }

            foreach (BaseMulti multi in e)
            {
                yield return(multi);
            }

            list.Clear();
            list.TrimExcess();
        }