模拟执行时间的进度条
Progress Bar simulating execution time
可能的重复项:
编码进度条建议
我用C++编写了一个应用程序,它可以编码和解码纯文本文件(压缩和解压缩)。现在我正在使用Qt创建gui,并希望添加一个进度条,显示用户运行压缩时的压缩进度,这类似于winrar或常规设置应用程序。是否可以创建表示当前执行时间/总执行时间百分比的进度条?或者我可以像显示下载状态的进度条一样进行近似。 创建此类进度条的一般方法是什么?
一般方法是让一个线程完成工作,而另一个线程使 UI 保持最新。
然后,您必须定义一种机制(以最简单的形式,即全局变量),使用该机制,更新 UI 的线程可以了解完成作业的百分比。然后,您可以绘制适当的小部件等。
通常,使用(至少)两个线程,您需要的不仅仅是该共享变量。更新 UI 的线程必须能够完全了解正在发生的事情、可用的新信息、正在执行的操作等。请注意,实际上是另一个线程在做任何有用的事情。UI 线程将是观察程序状态为用户绘制内容的人。
执行作业的线程应该能够估计其进度。在您的情况下,例如通过number_of_bytes_decoded / total_file_size
.有时,无法预测进度,因此您只需将进度更新为"flash"或其他什么,表明正在取得进展,但您无法给出百分比。例如,当您看到进度条内的内容向左和向右移动时,就会发生这种情况。
相关文章:
- 简单C++"Hello World"程序的执行时间长
- 我使用 OpenMP 的线程越多,执行时间就越长,这是怎么回事?
- 为什么切换 for 循环的顺序会显著改变执行时间?
- cmd.exe与Powershell中C++程序的不同执行时间
- pthread执行时间比顺序执行时间差
- OpenCV 函数 cv::remap() 的执行时间更长,当程序在两者之间进入睡眠状态时
- 为什么 std::chrono 在测量循环和编译器优化的并行 OpenMP 的执行时间时不起作用?
- 我需要帮助来缩短检索 SSL 证书的执行时间
- 如何测量cudaMalloc执行时间
- c++中的执行时间和检查流状态
- 为什么for循环中的异步不能提高执行时间
- 为什么 C++ openMP 程序执行时间更长
- 测量任何 Windows 可执行文件的内存使用情况和执行时间
- 需要减少我的C++代码的执行时间
- 如何在 ubuntu 上的 php 脚本中获取程序(c,c++,java,python,php)的执行时间和内存使用量?
- 在Qt中设置pixmap时的执行时间很奇怪
- 异步控制线程执行时间
- 如何对 g++ 设置执行时间限制?
- 测量 std::系统的实际执行时间(以 C++ 为单位)
- 模拟执行时间的进度条