当前位置: 首页 > news >正文

如何做微信网站做广告深圳全面放开

如何做微信网站做广告,深圳全面放开,吉林网站建设业务,广州市人口java.nio.ByteBuffer的 capacity, limit, position, mark Capacity#xff08;容量#xff09; 定义#xff1a;缓冲区的总容量#xff0c;即缓冲区中可以容纳的元素的数量。这个容量在缓冲区创建时被设定#xff0c;并且之后不能被改变。 用途#xff1a;它定义了缓冲区…java.nio.ByteBuffer的 capacity, limit, position, mark Capacity容量 定义缓冲区的总容量即缓冲区中可以容纳的元素的数量。这个容量在缓冲区创建时被设定并且之后不能被改变。 用途它定义了缓冲区可以容纳多少数据。一旦缓冲区被分配其容量就固定了。Limit限制 定义第一个不应该被读或写的元素的索引换句话说是缓冲区的当前终点。 用途在写模式下limit 等于 capacity表示你不能再往缓冲区中写数据了。在读模式下limit 会被设置为某个小于 capacity 的值表示有多少数据是可读的。limit 可以被改变以反映缓冲区中实际数据的数量。Position位置 定义下一个要被读或写的元素的索引。 用途它指定了下一个操作读或写发生的位置。当从缓冲区读取数据时position 会自动增加指向下一个可读的数据。当向缓冲区写入数据时position 同样会自动增加指向下一个要写入的位置。Mark标记 定义一个备忘位置通过调用 mark() 方法可以设置。 用途在某些操作之后你可能想回到某个特定的位置这时就可以使用 mark() 方法来标记当前的位置。之后无论 position 走到哪里你都可以通过调用 reset() 方法来回到 mark 标记的位置。注意mark 是可选的并且只有在 position 被改变之前它才是有效的。 初始值: limit与capacity初始值相同, position初始是0, mark是-1 从测试代码可看出: limit与capacity初始值相同, position初始是0, mark是-1 测试代码 import java.nio.ByteBuffer;public class TestByteBuffer2409172015 {public static boolean plntrue;public static void pln(Object...oAr) {if(pln)for(Object o:oAr)System.out.println(o);}public static void main(String...arguments) {ByteBuffer bbf ByteBuffer.allocate(102400);pln(bbf);pln(bbf.capacity()bbf.capacity());pln(bbf.limit()bbf.limit());pln(bbf.position()bbf.position());pln(bbf.mark()bbf.mark());} }结果: java.nio.HeapByteBuffer[pos0 lim102400 cap102400] bbf.capacity()102400 bbf.limit()102400 bbf.position()0 bbf.mark()java.nio.HeapByteBuffer[pos0 lim102400 cap102400]可看出: 实现类是: java.nio.HeapByteBuffer limit与capacity初始值相同 position初始是0 mark()方法不是返回mark属性的值, 而是设置markposition , 与reset()方法配合使用, mark初始值是-1,在不调用mark()方法就调用reset()方法时,会报错 从源码看出: limit与capacity初始值相同, position初始是0, mark是-1 这四个属性定义在ByteBuffer的父类 java.nio.Buffer中 private int mark -1;private int position 0;private int limit;private final int capacity;mark初始值是-1 , position初始值是0 ByteBuffer的两个静态工厂方法 public static ByteBuffer allocateDirect(int capacity) {return new DirectByteBuffer(capacity);}public static ByteBuffer allocate(int capacity) {if (capacity 0)throw createCapacityException(capacity);return new HeapByteBuffer(capacity, capacity, null);}allocate(int capacity) 方法 new一个继承自ByteBuffer的HeapByteBuffer类, capacity属性与limit属性值都来自capacity参数值allocateDirect(int capacity) new一个DirectByteBuffer类 extends MappedByteBuffer extends ByteBuffer DirectByteBuffer(int cap) { // package-privatesuper(-1, 0, cap, cap, null);boolean pa VM.isDirectMemoryPageAligned();int ps Bits.pageSize();long size Math.max(1L, (long)cap (pa ? ps : 0));Bits.reserveMemory(size, cap);long base 0;try {base UNSAFE.allocateMemory(size);} catch (OutOfMemoryError x) {Bits.unreserveMemory(size, cap);throw x;}UNSAFE.setMemory(base, size, (byte) 0);if (pa (base % ps ! 0)) {// Round up to page boundaryaddress base ps - (base (ps - 1));} else {address base;}try {cleaner Cleaner.create(this, new Deallocator(base, size, cap));} catch (Throwable t) {// Prevent leak if the Deallocator or Cleaner fail for any reasonUNSAFE.freeMemory(base);Bits.unreserveMemory(size, cap);throw t;}att null;super(-1, 0, cap, cap, null); 这句看出 capacity与limit初始值相同 从clear()方法也可看出: limit与capacity初始值相同, position初始是0, mark是-1 public Buffer clear() {position 0;limit capacity;mark -1;return this;
http://www.hkea.cn/news/14309205/

相关文章:

  • dw网站导航怎么做药品网站如何建设
  • 做赌钱网站设计网页的代码
  • 第一推是谁做的网站衡阳市建设网站
  • 响应式网站自助建站知名网站制作服务
  • 学校网站制作平台联想电脑建设网站前的市场分析
  • 网站建设需要注意的事情免费个人网站建设公司
  • 教育培训网站设计加盟培训机构
  • 登陆网站空间的后台附近旧模板出售市场
  • 济南网站建设app一键开启网站
  • 织梦网站源码转换成wordpress郑州市网络设计
  • 中国保密在线网站培训阿里巴巴做外贸流程
  • 深圳住建设局官方网站电商营销策划方案
  • 商城网站怎么建设哈尔滨房地产型网站建设
  • 奇信建设集团官方网站做平面设计兼职的网站
  • 网站评估内容 优帮云wordpress 修改
  • 自助建站系统模板大连装修网站推广
  • thinkphp做企业网站seo是免费推广吗?
  • 网站智能云wordpress更换网站域名
  • 网站开发合同注意事件有哪些北京小程序开发多少钱
  • 青岛建网站的公司东莞市疾控中心官网
  • 网站开发报价方案电子商务的网站案例
  • 河南建筑业城乡建设网站查询免费微信微网站模板下载
  • 工商核名在哪个网站长沙网站seo技术厂家
  • 网页制作网站首页龙华建网站多少钱
  • 必应搜索网站代码运行框wordpress
  • 网站负责人 备案网站开发 后端服务
  • wordpress开启子域名多站点模式微网站 小程序 区别
  • 百度站长验证网站失败重庆的网站建设公司
  • 用树莓派做网站服务器网站备案为什么要闭站
  • 北京网站建设公司 北京网站设计 网页设计制作 高端网站建设 分形科技菏泽建设企业网站