【发布时间】:2012-09-08 01:52:13
【问题描述】:
我开发了一个可以处理数据的应用程序(在我的例子中,图像算法在视频上执行)。我开发了不同的ProcessingMethods。
有时会并行处理多个视频。每个进程在单独的线程中运行。
我有一个带有多个ProgressBars 的 GUI,一个用于处理数据的每个线程。
更新ProgressBar的好方法是什么?
目前,我的 GUI 正在创建所有处理线程,并为每个线程创建一个 ProgressBar。然后我将那些ProgressBars 传递给线程,线程将它们传递给ProcessingMethod。然后ProcessingMethod 将更新ProgressBar(使用Invoke())。
我有不同的ProcessingMethods。在每种方法中,我都有复制粘贴代码来更新ProgressBar。虽然我是编程新手,但我知道复制粘贴不好。
有什么好办法让它变得更好?
【问题讨论】:
-
请给我们代码,我相信为你重构它会不到一分钟的时间
标签: c# multithreading user-interface progress-bar invoke