我的编程方式有什么错误或本质上不安全吗?我仍在学习.NET 中的线程逻辑。
基本上,我APIManager.ExecuteRequest()
被叫了两次,这需要一段时间,所以我希望这两个电话同时发生。看起来 dataResult 变量在加入后都被适当地填充了,但我一直在看到关于AsyncResult
所有其他 .NET 并发相关 API 的事情,我认为我可能有点过于简化了。
如果没有任何问题,有人可以告诉我获得相同结果的更好方法吗?
MyDataResult dataResult1 = null, dataResult2 = null;
System.Threading.Thread t1 = new System.Threading.Thread(delegate()
{
dataResult1 = APIManager.ExecuteRequest(dataRequest1, TBIdentifiers.Text, TBCommands.Lines);
});
System.Threading.Thread t2 = new System.Threading.Thread(delegate()
{
dataResult2 = APIManager.ExecuteRequest(dataRequest2, TBIdentifiers.Text, TBCommands.Lines);
});
t1.Start();
t2.Start();
t1.Join();
t2.Join();