首页 > 编程语言 > 详细

java 控制台进度条(基于守护进程)

时间:2020-08-20 09:33:48      阅读:90      评论:0      收藏:0      [点我收藏+]

有时候我们有这样一种需求,我们需要进行长时间的IO读写。但是又是直接调用封装的方法。没办法打印日志,

我们希望可以在控制打印当前IO的读写状态。在不考虑读写性能的前提下,我的思路是:

  • + new一个打印特殊字符的守护线程出来,间隔时间打印字符串,当IO读写线程结束时,打印字符串线程也结束。

 

 /**
     * <per>
     * <p>控制台进度条</p>
     * <per/>
     *
     * @param
     * @return void
     * @throws
     * @Description
     * @author Liruilong
     * @Date 2020年08月19日  15:08:12
     **/
    public static void progress() {
        Thread thread = new Thread(() -> {
            StringBuilder tu = new StringBuilder("?");
            while (true) {
                tu.append("?");
                System.out.print("\r本地构建" + "Zip中:\t" + tu + "\t");
                try {
                    TimeUnit.MILLISECONDS.sleep(500);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            }
        });
        thread.setDaemon(true);
        thread.start();
    }

 

java 控制台进度条(基于守护进程)

原文:https://www.cnblogs.com/liruilong/p/13533011.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!