zoukankan      html  css  js  c++  java
  • 学习<>WF程序队列应用实例-Wait活动

    1.Wait活动首先等待一段指定的时间的流逝,然后在完成.代码如下:

    Code

    这个自定义的Wait活动依赖TimerService的实现,TimerServices管理着实际的计时器,在Wait活动的Execute方法中,创建一个WF程序队列并注册了ContinueAt方法,随后调用TimerServices的SetTimer方法,将一个代表计时器的Uid传入方法,当计时器被触发时,TimerServices会把数据压入Wait活动创建的WF程序队列中,当调度器调用ContinueAt方法,并迁移到Closed状态.

    2.我们现在定义一个名TimerServices的抽象类,以便为我们的计时器服务提供接口.我们可以实现各种各样的逻辑,代码如下:

    Code

    3.接下来我们实现一个简单的计时器服务,代码如下:

    Code

    4.接下来我们在Wait活动所在的程序集的元数据里加入以下元数据:

    Code

    以便将XML名称空间"http://GuoyiWF/Activities"映射到CLR名称空间"Guoyier.Activities".

    5.我们新建一个顺序工作控制台应用程序,来进行测试,在项目中新建一个xoml文件,内容如下:

    Code

    等待的时间间隔设置为10秒钟

    6.执行Wait活动的代码如下:

  • 相关阅读:
    [转]Java 的强引用、弱引用、软引用、虚引用
    无法向会话状态服务器发出会话状态请求。请确保 ASP.NET State Service (ASP.NET
    [转]理解水平扩展和垂直扩展
    Uva 12299 带循环移动的RMQ(线段树)
    Codeforces 758D Ability To Convert(区间DP)
    Codeforces 758C Unfair Poll
    Codeforces 758B Blown Garland
    Codeforces 758A Holiday Of Equality
    LA 3938 动态最大连续和
    Uva 11235 RMQ问题
  • 原文地址:https://www.cnblogs.com/goyier/p/1313604.html
Copyright © 2011-2022 走看看