提问者:小点点

异步或并行任务-C#[重复]


我有一个应用程序,我需要执行两个I/O任务:获取GPS位置,通过蓝牙检索一些数据。这两个任务的完成时间可能不同,可能需要很多秒。为了提高应用程序的速度,我希望同时启动两个活动,然后等待两个活动都完成后再继续。

如果我这样做:

bool locationStatus= await GetCurrentLocation();
bool vehicleStatus = await GetVehicleData();

是第二个功能被踢掉了,还是只有UI没有被阻止?

我需要调用并行任务吗?


共1个答案

匿名用户

您将直接等待第一个函数。如果想让函数异步完成,就必须将放在需要变量的位置。

例如:

var locationStatus = GetCurrentLocation();
var vehicleStatus = GetVehicleData();

if (await locationStatus && await vehicleStatus)
{
    // Do stuff
}

相关问题