第12章. 调度程序(Scheduler)

<html><head>
      <meta http-equiv="Content-Type" content="text/html; charset=GB2312">
   <title>Chapter&nbsp;12.&nbsp;Scheduler</title><link rel="stylesheet" href="css/html.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.65.1"><link rel="home" href="index.html" title="JBoss jBPM 3.1"><link rel="up" href="index.html" title="JBoss jBPM 3.1"><link rel="previous" href="taskmanagement.html" title="Chapter&nbsp;11.&nbsp;Task management"><link rel="next" href="asynchronouscontinuations.html" title="Chapter&nbsp;13.&nbsp;Asynchronous continuations"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr>
     <th colspan="3" align="center">第12章.&nbsp;调度程序(Scheduler)</th>
   </tr><tr>
     <td width="20%" align="left"><a accesskey="p" href="taskmanagement.html">上一页</a>&nbsp;</td>
     <th width="60%" align="center">&nbsp;</th>
     <td width="20%" align="right">&nbsp;<a accesskey="n" href="asynchronouscontinuations.html">下一页</a></td>
   </tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div>
     <h2 class="title"><a name="scheduler"></a>第12章.&nbsp;调度程序(Scheduler)</h2>
   </div></div><div></div></div>
   <p>这章描述在JBPM中定时器是如何工作的?</p>
   <p>在流程中的事件之上,可创建定时器. 当定时器到期, 动作被执行或转换发生.</p>
   <div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="timers"></a>12.1.&nbsp;Timers</h2></div></div><div></div></div><p>最简单的指定一个定时器的方法是将一个timer元素加入到节点</p>
  <pre class="programlisting">&lt;state name='catch crooks'&gt;
  &lt;timer name='reminder'
         duedate='3 business hours'
         repeat='10 business minutes'
         transition='time-out-transition' &gt;
    &lt;action class='the-remainder-action-class-name' /&gt;
  &lt;/timer&gt;
&lt;/state&gt;</pre>
  <p>指定在节点上的定时器在离开节点后就不执行.  transition和action是可选的.  在执行定时器时,将按顺序发生下列事件: </p>
  <div class="itemizedlist"><ul type="disc"><li>一个timer类型的事件产生</li>
    <LI>如果指定了动作,则动作被执行.</LI>
    <LI>如果转换被指定,将会通过指定的转换送出一个信号来继续执行.</LI>
    </ul>
  </div>
    <p>每个定时器必须有唯一的名称.  如果在timer元素中没有指定名字, 节点的名字将作为定时器的名字。</p>
    <p>定时器动作可作为任何被支持的动作元素比如动作或脚本.</p>
    <p>定时器由动作创建和中止。2个action-elements : create-timer和 cancel-timer . 实际上, 这两个定时器元素只是一个给在 node-enter上的create-timer动作和在<tt class="literal">node-leave</tt>上的cancel-timer动作的短符号(short notation).</p>
  </div><div class="section" lang="en"><div class="titlepage"><div><div>
      <h2 class="title" style="clear: both"><a name="schedulerdeployment"></a>12.2.&nbsp;调度程序部署</h2>
    </div></div><div></div></div>
    <p>流程执行创建和取消定时器。定时器存放在一个定时器储存里. 一个隔离的定时器运行器必须检查定时器储存并且在预期的时候执行定时器.</p>
    <div class="figure"><a name="scheduler.overview.image"></a><div class="mediaobject" align="center"><img src="images/scheduler.overview.gif" align="middle" alt="Scheduler components overview"></div><p class="title"><b>Figure&nbsp;12.1.&nbsp;调度程序 components overview</b></p></div>
    <p>以下类图显示在调度程序部署中调用的类。接口 SchedulerService和 TimerExecutor被指定使定时器执行的机制是可插入的 .</p>
    <div class="figure"><a name="scheduler.classes.image"></a><div class="mediaobject" align="center"><img src="images/scheduler.classes.gif" align="middle" alt="Scheduler classes overview"></div>
    <p class="title"><b>Figure&nbsp;12.2.&nbsp;调度程序类概览</b></p>
    </div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr>
      <td width="40%" align="left"><a accesskey="p" href="taskmanagement.html">上一页</a>&nbsp;</td>
      <td width="20%" align="center"><a accesskey="u" href="index.html">向上</a></td>
      <td width="40%" align="right">&nbsp;<a accesskey="n" href="asynchronouscontinuations.html">下一页</a></td>
    </tr><tr><td width="40%" align="left" valign="top">第11章.&nbsp;任务管理&nbsp;</td>
    <td width="20%" align="center"><a accesskey="h" href="index.html">首页</a></td>
    <td width="40%" align="right" valign="top">&nbsp;第13章.&nbsp;异步延续</td></tr></table></div></body></html> 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值