为什么 Windows 工作流运行时会创建我的工作流的两个实例?

发布于 2024-12-24 02:03:51 字数 646 浏览 2 评论 0原文

在调试生产代码时 - 我观察到我的工作流构造函数被多次触发。我不想因此而轻易责怪世界自然基金会,因为我的理念是“在责怪他人之前先检查你的代码”。我创建了一个示例应用程序来测试该方面,并发现正在创建两个工作流实例。理想情况下,只应创建一个实例。很想了解 - 为什么 WWF 运行时要创建两个实例?

代码清单:

public partial class TestWorkflow : SequentialWorkflowActivity
{
    public TestWorkflow()
    {
        InitializeComponent();
        countOfInstances++;
    }

    protected override ActivityExecutionStatus Execute(ActivityExecutionContext executionContext)
    {
        Console.WriteLine("Instances Created = {0}", countOfInstances);
        return base.Execute(executionContext);
    }

    private static int countOfInstances = 0;
}

谢谢。

While debugging production code - I observed that my workflow constructor was triggered multiple times. I do not wanted to blame WWF readily for that because of philosopy - 'check your code before blaming others'. I created a sample application to test that aspect and found that two worklow instances are getting created. Ideally only one instance should have been created. Curious to understand - why WWF runtime is creating two instances?

Code listing:

public partial class TestWorkflow : SequentialWorkflowActivity
{
    public TestWorkflow()
    {
        InitializeComponent();
        countOfInstances++;
    }

    protected override ActivityExecutionStatus Execute(ActivityExecutionContext executionContext)
    {
        Console.WriteLine("Instances Created = {0}", countOfInstances);
        return base.Execute(executionContext);
    }

    private static int countOfInstances = 0;
}

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

暖树树初阳… 2024-12-31 02:03:51

WF3 在许多情况下克隆活动来完成工作。这可能就是发生这种情况的原因。 WF4 并没有不这样做,这也是 WF4 的众多改进和性能优化之一。

WF3 in many cases cloned activites to do work. It could be that is why this is happening. WF4 does not not do this as one of the many improvments and performance optimizations in WF4.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文