非阻塞 I/O

Non-Blocking I/O

Non-BlockingI/O一般是指当一个线程读取数据时,它会尽可能多地获取数据,然后return立即。但是,我似乎无法解决使用相同概念写入数据的问题。什么情况下会使用Non-BlockingI/O打散数据写入,分段写入?

如果您同时写入许多文件并且它们驻留在慢速介质上或通过慢速网络(可能是上传),您可以使用非阻塞写入并在一个线程中处理所有文件。

线程每隔几分钟就会醒来并遍历所有试图写入任何剩余字节的文件,跟踪已成功写入的字节数。