Home avatar

个人知识星球,专注于Python/Java/AI技术

NIO笔记-缓存器细节

Buffer由数据和可以高效访问以及操纵这些数据的四个索引组成,这四个索引是:mark、position、limit、capacity。 下表是用于设置和复位索引以及查询它们的方法:

方法说明
capacity()返回缓存区容量
clear()清空缓存区,position=0,limit=capacity,此方法可覆写缓存区
flip()limit=position,position=0,用于准备从缓存区读取已经写入的数据
limit()返回limit的值
limit(int lim)设置limit的值
mark()将mark设置为position
position()返回position的值
position(int pos)设置position的值
remaining()返回(limit - position)
hasRemaining()若有介于position和limit之间的元素,返回true
reset()将position设置为mark
rewind()将position设置为0,也就是缓存区的开始位置

在缓存区中插入和提取数据的方法会更新这些索引,用于反映所发生的变化。

海盗分金

海盗,大家听说过吧。这是一帮亡命之徒,在海上抢人钱财,夺人性命,干的是刀头上舔血的营生。在我们的印象中,他们一般都瞎一只眼, 用条黑布或者讲究点的 用个黑皮眼罩把坏眼遮上。他们还有在地下埋宝的好习惯,而且总要画上一张藏宝图,以方便后人掘取。 不过大家是否知道,他们是世界上最民主的团体。参加海盗 的都是桀骜不驯的汉子,是不愿听人命令的,船上平时一切事都由投票解决。 船长的唯一特权,是有自己的一套餐具——可是在他不用时,其他海盗是可以借来用 的。船上的唯一惩罚,就是被丢到海里去喂鱼。

Yaml入门笔记

YAML是一个可读性高,用来表达资料序列的格式。YAML参考了其他多种语言,包括:XML、C语言、Python、Perl以及电子邮件格式RFC2822。 目前已经有数种编程语言或脚本语言支援(或者说解析)这种语言。

Xpath入门笔记

XPath即为XML路径语言(XML Path Language),它是一种用来确定XML文档中某部分位置的语言。 XPath基于XML的树状结构,提供在数据结构树中找寻节点的能力。 起初XPath的提出的初衷是将其作为一个通用的、介于XPointer与XSL间的语法模型。 但是XPath很快的被开发者采用来当作小型查询语言。

Mqtt消息中间件mosquitto的安装和配置

Mosquitto是一个开源(BSD许可证)的消息代理,实现MQTT(消息队列遥测传输)协议版本3.1.1。

MQTT(MQ Telemetry Transport),消息队列遥测传输协议,轻量级的发布/订阅协议, 适用于一些条件比较苛刻的环境,进行低带宽、不可靠或间歇性的通信。目前已经是物联网消息通信事实上的标准协议了。