每当我尝试加载大文件时,我的程序在文件加载之前都没有向我显示任何内容,然后打印出“已成功加载”,但是我希望它打印每0.500ms加载多少百分比(以c ++为单位)我怎样才能得到加载了多少文件以将其转换为百分数?
答案 0 :(得分:1)
您需要获取文件中的总字节数或行数。这将是计算百分比时的分母。
如果使用文件大小,则可以使用文件读取位置计算百分比。
建议的算法是使用至少两个线程 一个线程是GUI线程 另一个线程是工作线程。工作线程将读入文件。
有些人认为工作线程应该将它的进度发布到全局变量,GUI线程应该轮询该变量。
其他人认为工作者线程应该定期或间隔地向GUI线程发布消息。
选择权在你手中。