前言
golang的并发确实简单一些,(不过想要写好也不容易)最近用golang写一个目录扫描工具来练手。写到后面发现需要显示内容和进度(比如进度条),否则工具体验比较差(可能让用户以为程序卡死)。但不想换行输出,这样信息冗杂,界面难看。最好能动态显示,记下踩坑过程,有这篇文章。
解决的几种方法
回车符
代码如下
这里的
但一个问题是如果并发一个打印函数就会出现如下结果
还是不过美观,修改一下就是在打印
还是不对,不过在修改一下,用空格代替后面遗留的进度条
呕吼,完成。
完整并发代码
怎么用就看大家自己发挥了。注意这种方法不仅能够实现进度条,其他的动态效果都能实现。
progressbar
使用第三方包
导入后使用就很简单了
不过使用发现并发打印还是存在同样问题,还在看到文档存在
即可。看下我的实际使用效果
最后
项目地址
https://github.com/srat1999/s-dirscan