java WHILE 循环问题
有没有办法让循环在5秒以后自动退出?
问题补充:
能给个实例代码么?
问题补充:
因为当没有接受到数据包的时候循环会停在dgs.receive(p)这里,所以我想让循环只接收5秒的包,5秒后退出循环。
问题补充:
你这个循环是线程睡5秒继续执行 ,我要的是让循环退出而不是让线程SLEEP
问题补充:
恩 是的 我刚查了文档 设置了TIMEOUT 然后解决了 你就回答了 不过还是谢谢你 分给你吧~
问题补充:
clshanghe 写道
利用线程就可以啊
能给个实例代码么?
问题补充:
DatagramPacket p = new DatagramPacket(datas,datas.length); while(true) { dgs.receive(p); System.out.println(p); }
因为当没有接受到数据包的时候循环会停在dgs.receive(p)这里,所以我想让循环只接收5秒的包,5秒后退出循环。
问题补充:
clshanghe 写道
用JAVA实现多线程编写,使得许多小球在界面内循环跳动
下面这段代码应该符合你的需求 仔细参考一下
下面这段代码应该符合你的需求 仔细参考一下
你这个循环是线程睡5秒继续执行 ,我要的是让循环退出而不是让线程SLEEP
问题补充:
ethen 写道
我觉得不应该在while里面改,还是应该针对receive方法进行修改,应该可以设置timeout的。
恩 是的 我刚查了文档 设置了TIMEOUT 然后解决了 你就回答了 不过还是谢谢你 分给你吧~
2019-03-25 13:46
相关教程
更多Java循环结构 – for, while 及 do…while
Java循环结构 - for, while 及 do...while 顺序结构的程序语句只能被执行一次。如果您想要同样的操作执行多次,,就需要使用循环结构。 Java中有三种主要的循环结构: while循环 do…while循环 for循环
java新手求解关于大量数据的循环问题
现在又20W+的数据要通过循环,要怎么样对这些数据进行分批循环??? 也就是先循环这些数据的前1000条,之后再循环后1000条,如此下去~~ 问题补充:就是从excel中读取20W+的邮件地址,然后循环向这些地址发送邮件~ 问题补充: 牟盖东 写道 如果只有邮件地址,初步计算占用10M级的内存。这么点数据,不明白为什么要拆开循环。为了发1000个看看有多少个
java 一次循环中,插入两条相同的数据
这是一个java写的程序,我在读到另一个系统的xml文件后,将数据插入到另一个系统的数据库,在插入前做判断,如果这条记录已经存在,那么更新,没有的话就插入,程序已经运行一年多没有问题了,最近有几个接口,都出现过一条数据重复插入的问题。 请各位给点意见,推测是哪方面的问题造成的,因为想重现错误非常难。 我的推测及根据: 1,数据库使用的是oracle,表的主键是一个自增序列,所以不能约束,重复
【第三章】 DI 之 3.2 循环依赖 ——跟我学spring3
循环依赖就是循环引用,就是两个或多个Bean相互之间的持有对方,比如CircleA引用CircleB,CircleB引用CircleC,CircleC引用CircleA,则它们最终反映为一个环。此处不是循环调用,循环调用是方法之间的环调用。
bash shell循环的疑问
下面两段代码 第一段,无法正确统计文件行数,count在循环中的计算,出了循环就无效了 第二段,count2出了循环依然有效 初学shell,不太明白这是为什么,希望大家指点一下 ps:第一段代码应该如何修改,才能达到第二段的效果 #!/bin/bashcount=0cat "$1" | while read linedo count=$[ $count + 1
Lua循环遍历
Groovy 循环语句
java顺序循环队列最多能容纳60个元素,当front=47,rear=23时,求队列元素个数?
我从网上看到一种做法是用|rear-front+MAX|%MAX,结果是24,那么我想问了这个与直接用|rear-front|有什么区别呢? 感激不尽。。。 问题补充: ethen 写道 首先,结果是36。(严重怀疑lz数学水平, ) 其次,当rear>front时,size=rear-front.当rear<front时,size=rear-f
Java 数组
Java 数组 数组对于每一门编辑应语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同。 Java语言中提供的数组是用来存储固定大小的同类型元素。 你可以声明一个数组变量,如numbers[100]来代替直接声明100个独立
Java 方法
Java 方法 在前面几个章节中我们经常使用到System.out.println(),那么它是什么呢? println()是一个方法(Method),而System是系统类(Class),out是标准输出对象(Object)。这句话的用法是调用系统类Sy
原创:如何实现在Excel通过循环语句设置指定行的格式
原创:如何实现在Excel通过循环语句设置指定行的格式 一、需求: 想让excel的某些行(比如3的倍数的行)字体变成5号字 如何整; 二、实现: Sub code()For i = 1 To Range("A65536").End(xlUp).Row Rows(3 * i & ":" & 3 * i).Select Sel
java数组的遍历
1. for-each增强for循环在遍历数组过程中不能修改数组中某元素的值
java处理大量数据时性能问题
项目中一个小模块要求连接数据,比如有3条记录:a-b, b-c, c-d,则结果就是a-b-c-d。如果是a-b, b-c, b-d,则结果是a-b-c和a-b-d两条。 现一次性从数据库取出1万多条数据,放到list里面,然后按照上述连接要求进行循环匹配,连接结果设定最多就是10个节点(否则可能无限制循环了),但是这时整个机器像死了一样,内存占用不断上升(启动时我已经设置-Xms512m -X
Java Applet基础
Java Applet基础 applet是一种Java程序。它一般运行在支持Java的Web浏览器内。因为它有完整的Java API支持,所以applet是一个全功能的Java应用程序。 如下所示是独立的Java应用程序和applet程序之间重要的不同: Java中applet类
《编程之道 Java》(Program JAVA)[ISO]
本教材的第1章到第7章讲述了怎样学习Java和Java的基础知识,以及面向对象的编程思想;第8章到第11章,主要讲述了Java的核心技术:抽象、接口、封装、继承等。
最新教程
更多java线程状态详解(6种)
java线程类为:java.lang.Thread,其实现java.lang.Runnable接口。 线程在运行过程中有6种状态,分别如下: NEW:初始状态,线程被构建,但是还没有调用start()方法 RUNNABLE:运行状态,Java线程将操作系统中的就绪和运行两种状态统称为“运行状态” BLOCK:阻塞状态,表示线程阻塞
redis从库只读设置-redis集群管理
默认情况下redis数据库充当slave角色时是只读的不能进行写操作,如果写入,会提示以下错误:READONLY You can't write against a read only slave. 127.0.0.1:6382> set k3 111 (error) READONLY You can't write against a read only slave. 如果你要开启从库
Netty环境配置
netty是一个java事件驱动的网络通信框架,也就是一个jar包,只要在项目里引用即可。
Netty基于流的传输处理
在TCP/IP的基于流的传输中,接收的数据被存储到套接字接收缓冲器中。不幸的是,基于流的传输的缓冲器不是分组的队列,而是字节的队列。 这意味着,即使将两个消息作为两个独立的数据包发送,操作系统也不会将它们视为两个消息,而只是一组字节(有点悲剧)。 因此,不能保证读的是您在远程定入的行数据
Netty入门实例-使用POJO代替ByteBuf
使用TIME协议的客户端和服务器示例,让它们使用POJO来代替原来的ByteBuf。
Netty入门实例-时间服务器
Netty中服务器和客户端之间最大的和唯一的区别是使用了不同的Bootstrap和Channel实现
Netty入门实例-编写服务器端程序
channelRead()处理程序方法实现如下
Netty开发环境配置
最新版本的Netty 4.x和JDK 1.6及更高版本
电商平台数据库设计
电商平台数据库表设计:商品分类表、商品信息表、品牌表、商品属性表、商品属性扩展表、规格表、规格扩展表
HttpClient 上传文件
我们使用MultipartEntityBuilder创建一个HttpEntity。 当创建构建器时,添加一个二进制体 - 包含将要上传的文件以及一个文本正文。 接下来,使用RequestBuilder创建一个HTTP请求,并分配先前创建的HttpEntity。
MongoDB常用命令
查看当前使用的数据库 > db test 切换数据库 > use foobar switched to db foobar 插入文档 > post={"title":"领悟书生","content":"这是一个分享教程的网站","date":new
快速了解MongoDB【基本概念与体系结构】
什么是MongoDB MongoDB is a general purpose, document-based, distributed database built for modern application developers and for the cloud era. MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。
windows系统安装MongoDB
安装 下载MongoDB的安装包:mongodb-win32-x86_64-2008plus-ssl-3.2.10-signed.msi,按照提示步骤安装即可。 安装完成后,软件会安装在C:\Program Files\MongoDB 目录中 我们要启动的服务程序就是C:\Program Files\MongoDB\Server\3.2\bin目录下的mongod.exe,为了方便我们每次启动,我
Spring boot整合MyBatis-Plus 之二:增删改查
基于上一篇springboot整合MyBatis-Plus之后,实现简单的增删改查 创建实体类 添加表注解TableName和主键注解TableId import com.baomidou.mybatisplus.annotations.TableId; import com.baomidou.mybatisplus.annotations.TableName; import com.baom
分布式ID生成器【snowflake雪花算法】
基于snowflake雪花算法分布式ID生成器 snowflake雪花算法分布式ID生成器几大特点: 41bit的时间戳可以支持该算法使用到2082年 10bit的工作机器id可以支持1024台机器 序列号支持1毫秒产生4096个自增序列id 整体上按照时间自增排序 整个分布式系统内不会产生ID碰撞 每秒能够产生26万ID左右 Twitter的 Snowflake分布式ID生成器的JAVA实现方案