在C#中绘制不同的线程

时间:2019-03-16 18:38:17

标签: c# multithreading

我制作了一个C#程序来探索Mandelbrot分形。有一件事情使它使用起来有些乏味:每当绘制图像时,程序就会挂起并且在完成之前不接受输入。当出现问题或输入的值过大时,这意味着必须重新启动该程序,并且通常来说,令人烦恼的是,在绘制过程中您无法执行任何操作。 因此有人建议使用多线程,而我对此进行了调查。我以为我想使绘图发生在单独的线程上,所以主线程仍可以处理用户输入。

但是,我无法使其正常工作:创建新线程时,我需要为其提供启动方法/函数。但是我不能在这里使用Paint Event Handler,因为它需要两个参数(一个对象和一个PaintEventArgs),我不能给它们提供这些参数。 似乎Paint Event Handler是一种特殊的方法,无法以常规方式调用,因此我找不到找到使其在其他线程上运行的方法。

所以我的问题是:实际上我可以使用其他线程,还是需要找到其他方法?如果可能的话,怎么办?

0 个答案:

没有答案