【问题标题】:Load new rows from database for buffering while processing previous loaded data在处理先前加载的数据时从数据库加载新行以进行缓冲
【发布时间】:2016-01-05 09:43:28
【问题描述】:

我正在尝试从数据库检索、处理数据并将其发送到 Web 服务。

现在我像这样使用Parallel.ForEach 同时发送数据:

while (true)
{
    var ctrl = new DataController();
    var list = ctrl.GetData();

    if (list == null)
    {
        SaveLogFile("No record retrived", @"C:\log\try-sending-log-");
        continue;
    }
    Parallel.ForEach(list, SendToWebService);
}

Parallel.ForEach 发送数据期间如何加载和缓冲新行?

【问题讨论】:

    标签: c# parallel-processing buffering


    【解决方案1】:

    Parallel.ForEach 将等到所有任务都执行完毕。 如果你想启动是异步的,则将Parallel.ForEach(list, SendToWebService); 包装在Task.Factory.StartNew 中,但请注意将由StartNew 触发的所有任务的生命周期

    【讨论】:

      猜你喜欢
      • 2020-11-22
      • 2012-09-27
      • 1970-01-01
      • 2018-01-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-16
      相关资源
      最近更新 更多