0

我有大约 12,000 条记录。

在我的一个工作流活动中,我对所有 12,000 条记录进行交互,并在每条记录上手动调用另一个活动。

该行看起来像:

IDictionary<string, object> results = WorkflowInvoker.Invoke(childActivity, args);

在大约第 11,500 条记录中,我收到 AccessViolationException 并显示我已到达受保护内存的消息。

我可以在任务管理器的性能选项卡中看到内存消耗上升。

如何防止上述代码在每次记录交互时增加内存,最终节省内存?

谢谢,约书亚

4

1 回答 1

1

您要在不同的工作流程中调用全新的工作流程?

放弃这个。创建一个 NativeActivity 并在Execute方法中使用NativeActivityContext.ScheduleFunc安排您的子活动(该工作流程)。在回调中,对结果执行您需要的操作,然后安排下一条记录。

于 2012-07-26T12:17:16.817 回答