0

我有两个问题。1. 为什么工作流类是“SEALED”类?继承工作流程是一种不好的做法吗?2. while 活动缓慢。IE.:我按此顺序将 3 个活动放在一个连续的 wf 上... Code_activity1 While_activity Code_activity2(在 while 活动中)


Code_activity1 - 将 int 计数器设置为 33320。 While_activity - 循环直到计数器 > 0。 Code_activity2 - 将计数器减 1(计数器--);

现在的问题是执行整个工作流程的时间太长(大约 20 分钟)!!!

如果我在代码上手动做同样的事情:,

int counter = 33320;
while(counter>0)
    counter--;

大约需要 1 毫秒。

为什么while活动这么慢?

谢谢

4

1 回答 1

0

1)即使生成的类是密封的

public sealed partial class Workflow1: SequentialWorkflowActivity

没有什么能真正阻止您删除sealed 关键字并从中继承。我猜你通常不想继承你设计和密封的工作流程,据说会给你一些性能优势

2) http://msdn.microsoft.com/en-us/library/ms735819.aspx稍微解释一下活动是如何工作的。您添加提到的子活动创建 33320 次,所有在活动执行/初始化等时触发的事件以及工作流运行时需要处理的所有额外工作,您将获得 20 分钟。

于 2009-06-12T17:35:52.863 回答