• 连接失败连接区间变量


    hash wheel timer它是一个算法,netty用于心跳超时检查,该算法的性能几个共同拥有:Ticks per Wheel (周围tick号码),Tick Duration(一tick持续时间)以及 TimeUnit(时间单位)。左右Tick Duration我感觉应该解释为每一次tick时间间隔。

    HashedWheelTimer原文英语凝视表达了这样一层意思:

            一个定时器对于近实时I/O网络超时调度。

          *Tick Duration: 如描写叙述“近实时”那样。HashedWheelTimer 不会准时的调度(间隔非常少)。每一次tick,将会检查是否会有TimerTask能够调度去运行,你能够在构造器中指定时间长的或时间短的tick duration用来控制调度时间的精准度。

           Ticks per Wheel:HashedWheelTimer维持了一个数据结构称作“时间轮”,一个时间轮hash表的存放是由一个任务死亡时间的hash code决定的。

    默认大小是512个hash表。假设你须要调度非常多的任务超时,你能够加大这个值。


    连接失败重连。第一次500毫秒。第二次1000毫秒,....,第n-1次5秒。第n次5秒


    连接失败时间间隔最大值5秒

    import java.util.concurrent.TimeUnit;
    
    import org.jboss.netty.util.HashedWheelTimer;
    import org.jboss.netty.util.Timeout;
    import org.jboss.netty.util.Timer;
    import org.jboss.netty.util.TimerTask;
    
    public class TimeOutTest {
    	public static void main(String[] argv) {
    		/*-
    		 * Tick Duration(一个tick的持续时间):  
    		 *		如描写叙述"近实时"那样,HashedWheelTimer不会准时的调度(间隔非常少)。
    		 *      每一次tick,将会检查是否会有TimerTask能够调度去运行,
    		 *      你能够在构造器中指定时间长的或时间短的tick duration用来控制调度时间的精准度。
    		 * 
    		 * 能够理解成: 每一次tick时间间隔
    		 *---------------------------------------------------------------------------------
    		 *	Ticks per Wheel(一轮的tick数): 
    		 *		HashedWheelTimer维持了一个数据结构称作"时间轮",
    		 *      一个时间轮hash表的存放是由一个任务死亡时间的hash code决定的。

    * 默认大小是512个hash表。假设你须要调度非常多的任务超时,你能够加大这个值。 * * 能够理解成: 同意Timeout的个数,默认是512个。 */ final Timer timer = new HashedWheelTimer(100, TimeUnit.MICROSECONDS); timer.newTimeout(new TimerTask() { private int t = 0; private int count = 1; private int step = 500; public void run(Timeout timeout) throws Exception { System.out.println("本次是延迟 " + t + "毫秒后运行"); if ((count * step) <= 5 * 1000) { t = count * step; System.out.println(" 下次运行将在延迟 " + t + "毫秒后 第" + count + "次"); count++; } timeout.getTimer().newTimeout(timeout.getTask(), t, TimeUnit.MILLISECONDS); } }, 500, TimeUnit.MILLISECONDS); } }



    版权声明:本文博主原创文章,博客,未经同意不得转载。

  • 相关阅读:
    Sqlite教程(1) SQLiteOpenHelper
    检查网络连接状态。
    GSON解译Json为DTO
    Okhttp教程 (1)
    HashMap的扩容算法
    回溯算法
    动态规划
    实现自旋锁
    Java堆
    垃圾回收算法总结
  • 原文地址:https://www.cnblogs.com/yxwkf/p/4829664.html
Copyright © 2020-2023  润新知