使一小步,我都愿意与你分享。有问题可以在联系方式专栏进行联系我,点击即可跟我交流。用到的软件都可以进行分享。 这次由于CSDN无法上传2M以上的,所以有所缺少。完整版本可以联系我。
一、JDK内置Timer定时器:
是JDK自带的一种定时器,用JDK上的介绍是:
提供对计时器 MBean 的实现。计时器 MBean 将在指定的时间发出警告,以唤醒所有注册的侦听器来接收计时器通知。
此类管理一个过期的计时器通知列表。这是一种允许用户根据需要任意添加/移除通知的方法。当计时器发出计时器通知并过时后,会将该通知自动从计时器通知列表中移除。
可以将其他计时器通知添加到常规重复发送的通知中。
注:
- 当发送计时器通知时,计时器将更新通知序列号,而不考虑通知类型。
- 计时器服务依赖于加载
Timer
类的主机的系统日期。如果侦听器主机具有不同的系统日期,则侦听器可能会不合时宜地接收到通知。为了避免此类问题,要同步所有需要计时的主机的系统日期。 - 定期通知的默认行为是固定延迟执行,这一点已在
Timer
中指定。为了使用固定速率执行,要使用重载的addNotification(String, String, Object, Date, long, long, boolean)
方法。 - 可能会在同一线程中执行所有这些通知侦听器。因此,必须快速执行以避免阻止其他侦听器或者打乱固定延迟执行的规律。请参见
NotificationBroadcasterSupport
。
中间也查询了一些资料,得到的一些关于timer的利弊问题。