SocketIO-nio
import java.nio.IntBuffer;public class TestBuffer {public static void main(String[] args) {// 1 基本操作//创建指定长度的缓冲区/*IntBuffer buf = IntBuffer.allocate(10);buf.put(13);// position位置:0 - > 1buf.put(21);// position位置:1 - > 2buf.put(35);// position位置:2 - > 3//把位置复位为0,也就是position位置:3 - > 0buf.flip();System.out.println("使用flip复位:" + buf);System.out.println("容量为: " + buf.capacity()); //容量一旦初始化后不允许改变(warp方法包裹数组除外)System.out.println("限制为: " + buf.limit()); //由于只装载了三个元素,所以可读取或者操作的元素为3 则limit=3System.out.println("获取下标为1的元素:" + buf.get(1));System.out.println("get(index)方法,position位置不改变:" + buf);buf.put(1, 4);System.out.println("put(index, change)方法,position位置不变:" + buf);;for (int i = 0; i < buf.limit(); i++) {//调用get方法会使其缓冲区位置(position)向后递增一位System.out.print(buf.get() + "\t");}System.out.println("buf对象遍历之后为: " + buf);*/// 2 wrap方法使用// wrap方法会包裹一个数组: 一般这种用法不会先初始化缓存对象的长度,因为没有意义,最后还会被wrap所包裹的数组覆盖掉。 // 并且wrap方法修改缓冲区对象的时候,数组本身也会跟着发生变化。 /*int[] arr = new int[]{1,2,5};IntBuffer buf1 = IntBuffer.wrap(arr);System.out.println(buf1);IntBuffer buf2 = IntBuffer.wrap(arr, 0 , 2);//这样使用表示容量为数组arr的长度,但是可操作的元素只有实际进入缓存区的元素长度System.out.println(buf2);*/// 3 其他方法IntBuffer buf1 = IntBuffer.allocate(10);int[] arr = new int[]{1,2,5};buf1.put(arr);System.out.println(buf1);//一种复制方法IntBuffer buf3 = buf1.duplicate();System.out.println(buf3);//设置buf1的位置属性//buf1.position(0);buf1.flip();System.out.println(buf1);System.out.println("可读数据为:" + buf1.remaining());int[] arr2 = new int[buf1.remaining()];//将缓冲区数据放入arr2数组中去buf1.get(arr2);for(int i : arr2){System.out.print(Integer.toString(i) + ",");}}
}
SocketIO-nio相关推荐
- 实时通信 socketio nio 总结
公司要求多一个实时通信的功能 解决思路如下 架构图: 后台管理页面实时显示在线的终端情况 终端服务器和后台服务器之间用NIO通信 当有终端登录登出,后台管理服务器(服务端)接收终端服务器(客户端) 接 ...
- Netty序章之BIO NIO AIO演变
Netty序章之BIO NIO AIO演变 Netty是一个提供异步事件驱动的网络应用框架,用以快速开发高性能.高可靠的网络服务器和客户端程序.Netty简化了网络程序的开发,是很多框架和公司都在使用 ...
- socketio mysql_socket.io 在java与微信小程序上的应用
最近有一个这样的功能场景.用户操作完成后.服务器主动通知另一个客户端显示结果. 这里涉及一个服务器推的这么一个东西.需要实现这么一个功能,对比了几个实现方式.最终选择了socket.io. 1.com ...
- 从Linux角度以及JVM源码,深入NIO的细节
原文地址:[网络编程]从Linux角度以及JVM源码,深入NIO的细节 最近一段时间都在啃Linux内核, 也给了自己机会再度深入理解Java的NIO实现,希望能获得更多东西,尝试理解以前未能理解的, ...
- java NIO详解
http://zalezone.cn/2014/09/17/NIO%E7%B2%BE%E7%B2%B9/ 1. 前言 我们在写java程序的时候,为了进行优化,把全部的精力用在了处理效率上,但是对IO ...
- Nio得知3——该示范基地:多路复用器模式
Reactor模式和NIO 本文可以看作是Doug Lea Scalable IO in Java一文的翻译. 当前分布式计算 Web Services盛行天下,这些网络服务的底层都离不开对socke ...
- java nio设计模式_Java NIO:浅析I/O模型
也许很多朋友在学习NIO的时候都会感觉有点吃力,对里面的很多概念都感觉不是那么明朗.在进入Java NIO编程之前,我们今天先来讨论一些比较基础的知识:I/O模型.下面本文先从同步和异步的概念 说起, ...
- java语言的实现机制_JAVA语言之Java NIO的工作机制和实现原理介绍
本文主要向大家介绍了JAVA语言之Java NIO的工作机制和实现原理介绍,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助. 前言 本文只简单介绍NIO的原理实现和基本工作流程 I/O和 ...
- nio的优势_NIO研究所 | 最有AI的EC6故事
随着EC6的交付开启,在大定盲盒活动中抽到"飞行嘉宾"交付的用户,也陆续和他们的专属"交付专员"见面了,先分享一波有爱的EC6提车现场? << 左右 ...
- java大文件读写操作,java nio 之MappedByteBuffer,高效文件/内存映射
http://langgufu.iteye.com/blog/2107023 java处理大文件,一般用BufferedReader,BufferedInputStream这类带缓冲的Io类,不过如果 ...
最新文章
- 全局性业务架构建模工作步骤
- php中的extract函数
- git学习——四git版本管理
- Ubuntu瘦身与扩容运动
- Android的十六进制颜色值
- python https协议和InsecurePlatformWarning问题
- ROS学习笔记六:理解ROS服务和参数
- Python查找列表中相加等于s的n个数字(combinations的使用)
- shell脚本导出oracle数据库,Shell脚本备份恢复Oracle数据库简单示例
- 斥资2.5亿美元,英特尔也开始玩车了
- iOS-屏幕适配-UI布局
- 快速搭建博客:美化主题
- 复杂的拉普拉斯逆变换
- 微信扫一扫下载apk的实现方式 微信跳转浏览器代码
- 再见2021,2022加油
- 电脑文件误删除怎么恢复?
- 考研数据结构之队列(3.3)——练习题之设以数组Q.elems[maxSize]存储循环队列的元素,同时以Q.rear和Q.length分别指示循环队列中的队尾位置和队列中所含元素的个数(C表示)
- javamail解析邮件,内容重复
- C语言基础——执行顺序
- 使用电信云时做对象储存时的异常信息:com.amazonaws.services.s3.model.AmazonS3Exception