服务端定义一个缓冲区,客户端发送数据,写下服务端的缓冲区。缓冲区写满了就写入磁盘,清空缓冲区,那么这个缓冲区应该定义成什么

发布时间2018/9/21 15:09:52

下载次数 0 次 访问量150 次

免开发-应用中心上线啦,专注提供优质插件源码和产品应用!

服务端定义一个缓冲区,客户端发送数据,写入服务端的缓冲区。缓冲区写满了就写入磁盘,清空缓冲区,那么这个缓冲区应该定义成什么?
服务端定义一个缓冲区, 客户端发送数据,  写入服务端的缓冲区。
如果缓冲区没有写满, 就继续写入缓冲区, 如果写满了就将缓冲区的数据写入硬盘, 然后清空缓冲区以便接受下次数据 。
那么按照这个思路, 服务端的缓冲区是不是应该定义成集合而不是数组。 例如List<byte> 而不是 byte[]

------解决思路----------------------
晕。

缓冲区是用来应对“重复读取”的。写入数据只要“异步写入硬盘”就行了,要什么缓冲?
------解决思路----------------------
定义成byte[ ]也没有任何问题啊,自己加个int型变量当做偏移量,每次+1,往下覆盖,写满了或者数据结束了,就写入文件
------解决思路----------------------
一般是byte数组,用缓冲区是减少io访问次数,尽可能的提高效率,当然如果缓冲区比较小,对于保存到文件,作用就不大了
------解决思路----------------------
如果本身就是传文件,当然不需要缓冲区
如果数据很分散,每次几个字节什么的,频繁写文件不太好吧,有个缓冲区也不错
------解决思路----------------------
。。。学习了
------解决思路----------------------
追问一句,如果写入对象是SQL,上述说法也适用嘛?

网友评论

发表评论

欢迎评论哦!