连接失败连接区间变量

连接失败连接区间变量

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

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); }}

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

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116951.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • ajaxpro json 使用「建议收藏」

    ajaxpro json 使用「建议收藏」(一)AJAXPro之旅—神奇的小魔盒-站在巨人的肩膀上做自己的事情-博客园 -[Translatethispage]2007年9月10日…JSON.2.dll,AjaxPro.JSON.dll,web.config5个文件.其中.2结尾的是应用在.Net2.0框架下的类库.(个人使用的是2.0的,以下的教程也是应用在2.0下的)…www.cnblogs.c…

    2022年7月15日
    18
  • Vue和vue全家桶有什么区别_Vue和vue全家桶有什么区别

    Vue和vue全家桶有什么区别_Vue和vue全家桶有什么区别vue全家桶都有什么全家桶,顾名思义,对于开发一个完整的中大型单页面应用项目所必须的所必须的插件和框架。注:此文章主要讲解vue-cli脚手架开发方式,不介绍各插件的具体使用方式,具体使用方式详见其他详细介绍文章。一、vue-clivue-cli也叫脚手架,官方定义为Vue.js开发的标准工具!相比scirpt标签引入,脚手架具有如下特点:1)、功能丰富对Babel、TypeScr…

    2025年7月24日
    4
  • matlab最炫名族风,matlab版 “最炫民族风” — 跟风之作(附音频效果)(转)[通俗易懂]

    matlab最炫名族风,matlab版 “最炫民族风” — 跟风之作(附音频效果)(转)[通俗易懂]该楼层疑似违规已被系统折叠隐藏此楼查看此楼晚上看到个帖,matlab演奏卡农,眼前一亮,以前从没想过用matlab出声,作者真乃大牛。看到一条评论:卡农算什么,有本事来最炫民族风。。。。于是我就手贱了。。。花了几个小时。。。1/3在读懂卡农的程序,1/3在学习简谱知识(还好小学初中学过点),1/3在把简谱转换成代码。。。不多说,程序如下,欢迎试听哈:%%%%%%%%%%%%%%%%%%%%…

    2022年9月22日
    5
  • 如何理解java方法的传值和传引用的参数传递方式(基本数据类型和引用类型)

    结论:1)当使用基本数据类型作为方法的形参时,在方法体中对形参的修改不会影响到实参的数值2)当使用引用数据类型作为方法的形参时,若在方法体中修改形参指向的数据内容,则会对实参变量的数值产生影响,因为形参变量和实参变量共享同一块堆区;3)当使用引用数据类型作为方法的形参时,若在方法体中修改形参变量的指向,此时不会对实参变量的数值产生影响,因此形参变量和实参变量分别指向不同的堆区例一:基本数据类型作为形参,运行结果不改变实参publicclassMain{publicstatic

    2022年4月14日
    43
  • hdu 4908 BestCoder Sequence

    hdu 4908 BestCoder Sequence

    2021年12月2日
    42
  • python向txt文件追加txt文件_python覆盖写入

    python向txt文件追加txt文件_python覆盖写入python写入文件时的覆盖和追加在使用Python进行txt文件的读写时,当打开文件后,首先用readline()对文件的内容读取,然后再用write()写入,这是发现虽然是用“r+”模式打开,按道理是应该覆盖的,但是却出现了追加的情况。调用close()关闭文件后,再次打开写入,就正常覆盖写入,所以如果出现了这种情况,不妨在写入之前先将文档关闭再打开一下。…

    2022年9月28日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号