但如果我们直接使用 Java NIO 来实现类似的功能,应该怎么做呢?