码迷,mamicode.com
首页 > 编程语言 > 详细

Java 异步NIO写文件,无队列线程池方案

时间:2018-03-01 17:35:48      阅读:213      评论:0      收藏:0      [点我收藏+]

标签:方法   cep   gif   nio   技术   分享   except   client   send   

java.nio.channels.AsynchronousChannel提供了异步写文件方法,

具体代码如下:

技术分享图片
public static void syncWrite(String path){
    File file = new File(path+"warn.log");
            if(!file.exists()) {
                file.createNewFile();
            }
            Path pathSyn = Paths.get(path+line+"warn.log");
            try {
                AsynchronousFileChannel channel = AsynchronousFileChannel.open(pathSyn, StandardOpenOption.WRITE);
                ByteBuffer buffer = ByteBuffer.allocate(1024);
                buffer = ByteBuffer.wrap(clientSender.getBytes("utf-8"));
                Future<Integer> future = channel.write(buffer, channel.size());
                channel.force(true);
                while (!future.isDone());
                buffer.clear();
                channel.close();
            } catch (Exception e) {
                e.printStackTrace();
            }    
}
异步NIO写文件

 

Java 异步NIO写文件,无队列线程池方案

标签:方法   cep   gif   nio   技术   分享   except   client   send   

原文地址:https://www.cnblogs.com/codegod/p/8488389.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!