线程安全IQueryable扩展方法

本文关键字:方法 扩展 IQueryable 安全 线程 | 更新日期: 2023-09-27 18:21:40

我想创建一个通用扩展方法,该方法将接收IQueryable和将以线程安全的方式在单独的线程/任务上预处理操作(如获取前十个元素)。

有人能给我一个正确的方法的代码示例吗

感谢

线程安全IQueryable扩展方法

类似的东西

    public static List<T> GetTopN<T>(IQueryable<T> inData, int n)
    {
        List<T> outData = new List<T>(n);
        lock (inData)
        {
            int i = 0;
            foreach (T t in inData)
            {
                if (i >= n)
                {
                    return outData;
                }
                i++;
                outData.Add(t);
            }
        }
        return outData;
    }