作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有三种方法,即方法 1、方法 2 和方法 3。
方法 1 获取要根据产品 ID 逐个添加到列表中的图像 URL 列表,即多个产品 ID 的集合上有一个循环,然后根据每个产品 ID,我得到一个我添加到的图像集合一个列表。
方法 1 根据该列表下载图像。
方法 2 与方法 1 相同,但从第二个站点下载图像。
方法 3 根据两个站点的每个产品 ID 比较下载的图像。
我想要的是 Method1 下载图像集合,然后运行 Method2 下载第二个站点的图像,然后 Method2 运行 Method3 比较图像。
我正在使用线程下载和比较这些图像,但图像比较无法比较图像,因为它在下载图像时比较图像。
最佳答案
你可以做的是:
private Thread tMethod1 = new Thread(runMethod1);
private Thread tMethod2 = new Thread(runMethod2);
private Thread tMethod3 = new Thread(runMethod3);
private void runThreads();
{
tMethod1.Start(); //starts method 1
tMethod2.Start(); //starts method 2
tMethod1.Join(); //waits for method 1 to finish
tMethod2.Join(); //waits for method 2 to finish
tMethod3.Start(); //starts method 3
tMethod3.Join(); //waits for method 3 to finish
}
private void runMethod1()
{
Method1();
}
private void runMethod2()
{
Method2();
}
private void runMethod3()
{
Method3();
}
这将同时运行 Method1
和 Method2
并等待它们完成,然后再启动 Method3
。
这是一个小变通,但有效。
关于multithreading - 如何使用线程在 C# 中一个接一个地运行 3 个方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13508146/
我是一名优秀的程序员,十分优秀!