gpt4 book ai didi

multithreading - 如何使用线程在 C# 中一个接一个地运行 3 个方法?

转载 作者:行者123 更新时间:2023-12-04 08:26:37 25 4
gpt4 key购买 nike

我有三种方法,即方法 1、方法 2 和方法 3。

  • 方法一是从一个站点下载图片
  • 方法 2 用于从第二个站点下载图像
  • 方法三是比较图片

方法 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();
}

这将同时运行 Method1Method2 并等待它们完成,然后再启动 Method3
这是一个小变通,但有效。

关于multithreading - 如何使用线程在 C# 中一个接一个地运行 3 个方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13508146/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com