
正文
java加入延迟的代码,java 实现延迟队列
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
如何用java在socket上设置时间延迟
1、Socket类里有一个setTimeout()函数,可以设定socket上读请求的超时时间;还有在connect()函数中,可以在第二个参数中指定socket连接超时时间。具体可以看看API文档。
2、//5秒钟将此选项设为非零的超时值时,在与此 Socket 关联的 InputStream 上调用 read() 将只阻塞此时间长度。如果超过超时值,将引发 java.net.SocketTimeoutException,虽然 Socket 仍旧有效。
3、如果IP或端口填错了 就用socket 的 setSoTimeout(timeout);这个方法 这个是连接超时时间,单位是毫秒,就是在timeout/1000秒内如果没有完成TCP连接,就会触发超时异常。
相关问答
Q1: 怎么用java中的timer做出延迟效果?
我们的Task必须实现TimerTask的方法run,要执行的任务就在这个run方法里面,这里,我们只让它往控制台打一行字。第二个参数 第二个参数是一个long型的值。这是延迟的时间,就是从程序开始以后,再过多少时间来执行定时任务。
//计时器重复任务对象 TimerTask task = new TimerTask() { / 实现计时器对象的接口方法 / Override public void run() { //这里需要重复运行的代码快 } };//安排指定的任务在指定的时间开始进行重复的固定延迟执行。
如果是要保证的准确性还是考虑一下spring的quartz(所谓的spring定时器org.springframework.scheduling.quartz.* 工具包)或真直接调用第三方式具类org.quartz。至少你说的那个jdk自带的java.util.* 工具包实现。
Timer只会同时执行一个线程,也就是说,前一个执行时间过长,它会等前一个执行完,再执行下一个。
我看出来了你要的是timer延迟处理,而不是进程延迟,两为都曲解了意思。
Q2: java中怎么在获取的系统时间上推迟一周,或者一年
1、在设置或获得 WEEK_OF_MONTH 或 WEEK_OF_YEAR 字段时,Calendar 必须确定一个月或一年的第一个星期,以此作为参考点。
2、在Date类中还提供了getDay方法,用于获得Date对象代表的时间是星期几,Date类规定周日是0,周一是1,周二是2,后续的依次类推。
3、System.currentTimeMillis();上面是一个long型的变量;得到当前的系统时间,单位为毫秒。
java加入延迟的代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java 实现延迟队列、java加入延迟的代码的信息别忘了在本站进行查找喔。








