创建托管调度执行程序服务

托管的已调度执行程序服务由应用程序用于在特定时间异步执行已提交任务。任务在由容器启动和管理的线程上执行。容器的上下文将传播到执行任务的线程。

在 GlassFish Server 中,可以配置托管的已调度执行程序服务资源并使资源可供应用程序组件使用,例如 Servlet 和 EJB。任务的实际调度由应用程序以编程方式实现。

  1. 在导航树中,展开“资源”节点。

  2. 在“资源”节点下,展开“并发资源”节点。

  3. 在“并发资源”节点下,选择“托管调度执行程序服务”。

    此时将打开“托管调度执行程序服务”页。

  4. 在“托管调度执行程序服务”页上,单击“新建”。

    此时将打开“新建托管调度执行程序服务”页。

  5. 在“JNDI 名称”字段中,键入标识资源的唯一名称。

    JNDI 名称在 JNDI 命名服务中注册,由应用程序用于查找资源。使用 concurrent/name 格式。例如,concurrent/myManagedScheduledExecutorService。名称只能包含字母数字、下划线、短划线或点字符。

  6. 选择“启用上下文信息”复选框以将上下文传播到线程,然后选择要传播的上下文。

    默认情况下此选项已启用,并且选中所有上下文。通过按住 Shift 键单击或按住 Ctrl 键单击选择多个上下文。如果禁用了此选项,则不传播上下文,即使已选中了它们也是如此。

  7. 选择“启用状态”复选框以启用资源。

    默认情况下启用此选项,这表示资源在创建之后立即可用。

  8. 在“线程优先级”字段中,键入分配给已创建线程的优先级。

    默认值为 5。

  9. 选中“启用长时间运行任务”复选框以使用资源来运行长时间运行的任务。

    如果启用,则不将长时间运行的任务报告为粘滞。默认情况下禁用此选项。

  10. 在“挂起前时间”字段中,键入在将任务视为无响应之前任务可执行的秒数。

    默认值为 0,这表示从不将任务视为无响应。

  11. 在“说明”字段中,键入资源的简短说明。

    此说明是字符串值,最多可以包含 250 个字符。

  12. 在“核心大小”字段中,键入线程池中保留的线程数 (即使这些线程空闲)。

    默认值为 0,这表示线程在调度首个任务时创建。

  13. 在“保持活动”字段中,键入当线程数大于核心大小时线程可以保持空闲状态的秒数。

    默认值为 60。

  14. 在“线程有效期”字段中,键入线程在被清除之前可以保留在线程池中的秒数,而无论线程数是否大于核心大小或线程是否处于空闲状态。

    默认值为 0,表示从不清除线程。

  15. 在“其他属性”部分中,不要添加任何其他属性。

    GlassFish Server 没有为此资源类型定义任何其他属性。此外,此资源类型当前不使用任何其他属性。

  16. 单击“确定”。

另请参阅
Copyright © 2005, 2013, Oracle and/or its affiliates. All rights reserved. Legal Notices