Module java.management

Interface TimerMBean

所有已知的实现类:
Timer

public interface TimerMBean
暴露定时器MBean的管理接口。
自JDK版本:
1.5
  • Method Details

    • start

      void start()
      启动定时器。

      如果在通知列表中的时间之前存在一个或多个定时器通知,则根据sendPastNotifications标志发送通知,然后根据其周期和剩余发生次数更新通知。如果定时器通知的日期仍早于当前日期,则该通知将从通知列表中移除。

    • stop

      void stop()
      停止定时器。
    • addNotification

      Integer addNotification(String type, String message, Object userData, Date date, long period, long nbOccurences, boolean fixedRate) throws IllegalArgumentException
      使用指定的typemessageuserData创建一个新的定时器通知,并将其插入到具有给定日期、周期和发生次数的通知列表中。

      如果要插入的定时器通知具有早于当前日期的日期,则该方法的行为就好像指定的日期是当前日期。
      对于一次性通知,通知将立即传递。
      对于周期性通知,第一个通知将立即传递,随后的通知将按照周期参数指定的间隔进行。

      fixedRate的值用于指定执行方案,如在 Timer中指定的那样。

      参数:
      type - 定时器通知类型。
      message - 定时器通知详细消息。
      userData - 定时器通知用户数据对象。
      date - 通知发生的日期。
      period - 定时器通知的周期(以毫秒为单位)。
      nbOccurences - 定时器通知将被发出的总次数。
      fixedRate - 如果为true且通知是周期性的,则通知将按照固定速率执行方案进行调度。如果为false且通知是周期性的,则通知将按照固定延迟执行方案进行调度。如果通知不是周期性的,则忽略。
      返回:
      新创建的定时器通知的标识符。
      抛出:
      IllegalArgumentException - 日期为null或周期或发生次数为负。
      参见:
    • addNotification

      Integer addNotification(String type, String message, Object userData, Date date, long period, long nbOccurences) throws IllegalArgumentException
      使用指定的typemessageuserData创建一个新的定时器通知,并将其插入到具有给定日期、周期和发生次数的通知列表中。

      如果要插入的定时器通知具有早于当前日期的日期,则该方法的行为就好像指定的日期是当前日期。
      对于一次性通知,通知将立即传递。
      对于周期性通知,第一个通知将立即传递,随后的通知将按照周期参数指定的间隔进行。

      固定延迟执行方案,如在 Timer中指定的那样。要使用 固定速率执行方案,请改用 addNotification(String, String, Object, Date, long, long, boolean)

      参数:
      type - 定时器通知类型。
      message - 定时器通知详细消息。
      userData - 定时器通知用户数据对象。
      date - 通知发生的日期。
      period - 定时器通知的周期(以毫秒为单位)。
      nbOccurences - 定时器通知将被发出的总次数。
      返回:
      新创建的定时器通知的标识符。
      抛出:
      IllegalArgumentException - 日期为null或周期为负。
      参见:
    • addNotification

      Integer addNotification(String type, String message, Object userData, Date date, long period) throws IllegalArgumentException
      使用指定的typemessageuserData创建一个新的定时器通知,并将其插入到具有给定日期、周期和空发生次数的通知列表中。 固定延迟执行方案,如在 Timer中指定的那样。要使用 固定速率执行方案,请改用 addNotification(String, String, Object, Date, long, long, boolean)

      参数:
      type - 定时器通知类型。
      message - 定时器通知详细消息。
      userData - 定时器通知用户数据对象。
      date - 通知发生的日期。
      period - 定时器通知的周期(以毫秒为单位)。
      返回:
      新创建的定时器通知的标识符。
      抛出:
      IllegalArgumentException - 日期为null或周期为负。
    • addNotification

      Integer addNotification(String type, String message, Object userData, Date date) throws IllegalArgumentException
      使用指定的typemessageuserData创建一个新的定时器通知,并将其插入到具有给定日期、空周期和发生次数的通知列表中。

      参数:
      type - 定时器通知类型。
      message - 定时器通知详细消息。
      userData - 定时器通知用户数据对象。
      date - 通知发生的日期。
      返回:
      新创建的定时器通知的标识符。
      抛出:
      IllegalArgumentException - 日期为null
    • removeNotification

      void removeNotification(Integer id) throws InstanceNotFoundException
      从通知列表中删除与指定标识符对应的定时器通知。
      参数:
      id - 定时器通知标识符。
      抛出:
      InstanceNotFoundException - 指定的标识符与此定时器MBean的通知列表中的任何定时器通知不对应。
    • removeNotifications

      void removeNotifications(String type) throws InstanceNotFoundException
      从通知列表中删除与指定类型对应的所有定时器通知。
      参数:
      type - 定时器通知类型。
      抛出:
      InstanceNotFoundException - 指定的类型与此定时器MBean的通知列表中的任何定时器通知不对应。
    • removeAllNotifications

      void removeAllNotifications()
      从通知列表中删除所有定时器通知,并重置用于更新定时器通知标识符的计数器。
    • getNbNotifications

      int getNbNotifications()
      获取注册到通知列表中的定时器通知数量。
      返回:
      定时器通知数量。
    • getAllNotificationIDs

      Vector<Integer> getAllNotificationIDs()
      获取注册到通知列表中的所有定时器通知标识符。
      返回:
      包含所有定时器通知标识符的Integer对象向量。
      如果没有为此定时器MBean注册定时器通知,则向量为空。
    • getNotificationIDs

      Vector<Integer> getNotificationIDs(String type)
      获取与指定类型对应的所有定时器通知的标识符。
      参数:
      type - 定时器通知类型。
      返回:
      包含具有指定type的所有定时器通知标识符的Integer对象向量。
      如果没有为此定时器MBean注册具有指定type的定时器通知,则向量为空。
    • getNotificationType

      String getNotificationType(Integer id)
      获取与指定标识符对应的定时器通知类型。
      参数:
      id - 定时器通知标识符。
      返回:
      定时器通知类型,如果标识符未映射到为此定时器MBean注册的任何定时器通知,则返回null。
    • getNotificationMessage

      String getNotificationMessage(Integer id)
      获取与指定标识符对应的定时器通知详细消息。
      参数:
      id - 定时器通知标识符。
      返回:
      定时器通知详细消息,如果标识符未映射到为此定时器MBean注册的任何定时器通知,则返回null。
    • getNotificationUserData

      Object getNotificationUserData(Integer id)
      获取与指定标识符对应的定时器通知用户数据对象。
      参数:
      id - 定时器通知标识符。
      返回:
      定时器通知用户数据对象,如果标识符未映射到为此定时器MBean注册的任何定时器通知,则返回null。
    • getDate

      Date getDate(Integer id)
      获取与定时器通知关联的日期的副本。
      参数:
      id - 定时器通知标识符。
      返回:
      日期的副本,如果标识符未映射到为此定时器MBean注册的任何定时器通知,则返回null。
    • getPeriod

      Long getPeriod(Integer id)
      获取与定时器通知关联的周期(以毫秒为单位)的副本。
      参数:
      id - 定时器通知标识符。
      返回:
      周期的副本,如果标识符未映射到为此定时器MBean注册的任何定时器通知,则返回null。
    • getNbOccurences

      Long getNbOccurences(Integer id)
      获取与定时器通知关联的剩余发生次数的副本。
      参数:
      id - 定时器通知标识符。
      返回:
      剩余发生次数的副本,如果标识符未映射到为此定时器MBean注册的任何定时器通知,则返回null。
    • getFixedRate

      Boolean getFixedRate(Integer id)
      获取指示周期性通知是以固定延迟还是以固定速率执行的标志的副本。
      参数:
      id - 定时器通知标识符。
      返回:
      获取指示周期性通知是以固定延迟还是以固定速率执行的标志的副本。
    • getSendPastNotifications

      boolean getSendPastNotifications()
      获取定时器是否发送过去通知的标志。
      返回:
      过去通知发送开/关标志值。
      参见:
    • setSendPastNotifications

      void setSendPastNotifications(boolean value)
      设置定时器是否发送过去通知的标志。
      参数:
      value - 过去通知发送开/关标志值。
      参见:
    • isActive

      boolean isActive()
      测试定时器MBean是否处于活动状态。当调用start方法时,定时器MBean被标记为活动。当调用stop方法时,它变为非活动状态。
      返回:
      如果定时器MBean处于活动状态,则返回true,否则返回false
    • isEmpty

      boolean isEmpty()
      测试定时器通知列表是否为空。
      返回:
      如果定时器通知列表为空,则返回true,否则返回false