2.5 Gathering Writes

简介: 2.5 Gathering Writes

使用如下方式写入,可以将多个 buffer 的数据填充至 channel

try (RandomAccessFile file = new RandomAccessFile("helloword/3parts.txt", "rw")) { FileChannel channel = file.getChannel(); ByteBuffer d = ByteBuffer.allocate(4); ByteBuffer e = ByteBuffer.allocate(4); channel.position(11);


d.put(new byte[]{'f', 'o', 'u', 'r'});
e.put(new byte[]{'f', 'i', 'v', 'e'});
d.flip();
e.flip();
debug(d);
debug(e);
channel.write(new ByteBuffer[]{d, e});

} catch (IOException e) { e.printStackTrace(); }

结果 +-------------------------------------------------+ |  0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f | +--------+-------------------------------------------------+----------------+ |00000000| 66 6f 75 72                                     |four            | +--------+-------------------------------------------------+----------------+ +-------------------------------------------------+ |  0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f | +--------+-------------------------------------------------+----------------+ |00000000| 66 69 76 65                                     |five

文件内容 onetwothreefourfive|


目录
相关文章
|
3月前
|
监控 NoSQL Redis
Asynchronous AOF fsync is taking too long (disk is busy?). Writing the AOF buffer without waiting for fsync to complete, this may slow down Redis.
Asynchronous AOF fsync is taking too long (disk is busy?). Writing the AOF buffer without waiting for fsync to complete, this may slow down Redis.
|
6月前
PGA memory operation
PGA memory operation
75 1
2.4 Scattering Reads
2.4 Scattering Reads
49 0
|
存储 缓存 分布式计算
译|Eventually Consistent
译|Eventually Consistent
56 0
|
关系型数据库 MySQL
Consistent Nonlocking Reads,Locking Reads 和Phantom Rows
以Consistent Nonlocking Reads,Locking Reads为突破点,用简单的例子来说明mysql常用的事务隔离级别(READ COMMITTED, REPEATABLE READ)和lock(record lock,gap lock,next-key lock, Insert Intention Lock)的关系
Consistent Nonlocking Reads,Locking Reads 和Phantom Rows
|
SQL 关系型数据库 Oracle
|
SQL 关系型数据库 索引
ORA-19566 exceeded limit of 0 corrupt blocks数据坏块处理
    问题描述 RMAN备份失败,报错如下:   channel ch1: starting piece 1 at 02-NOV-12 released channel: ch1 RMAN-00571: R...
2034 0
is not eligible for getting processed by all BeanPostProcessors
BeanPostProcessor是控制Bean初始化开始和初始化结束的接口。换句话说实现BeanPostProcessor的bean会在其他bean初始化之前完成,BeanPostProcessor会通过接口方法检查其他类型的Bean并做处理。
8776 0