我正在开发一个我需要进行并行任务的软件。
例如,这是我的"Paul"
:
task1
我有更多与Task t1 = new Task(()=>
{
//Do Some Codes
}
);
具有相同代码的任务:
task1
我还有一个计时器,以便我可以检查这些任务是否有效并更快地完成这些过程。但它不会改变,它们只有一项任务。
现在我想知道如何运行并行任务并给我更快的结果。
任何帮助将不胜感激
答案 0 :(得分:0)
您可以尝试使用“Multiple Threads”来调用方法或调用异步方法。 这应该会有所帮助。
更多信息:
https://docs.microsoft.com/en-us/dotnet/csharp/async
关于这个问题的投票答案也很有帮助
What is the difference between asynchronous programming and multithreading?
答案 1 :(得分:0)
假设您有两个函数,并且希望并行执行它们。我认为有两种方法可以做到这一点:
1:使用任务并行库 -
private void Function1()
{
//do work
}
private void Function2()
{
//do work
}
private void RunParallel()
{
Parallel.Invoke(Function1, Function2);
}
2:在单独的线程中运行每个函数 -
private void Function1()
{
//do work
}
private void Function2()
{
//do work
}
private void RunParallel()
{
ThreadStart ts1 = new ThreadStart(Function1);
ThreadStart ts2 = new ThreadStart(Function2);
Thread t1 = new Thread(ts1);
Thread t2 = new Thread(ts2);
t1.Start();
t2.Start();
}