Skip to content

Instantly share code, notes, and snippets.

@pczajkowski
Last active July 26, 2018 14:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save pczajkowski/64a7977c70b5bd6ba3c0e5d27472517f to your computer and use it in GitHub Desktop.
Save pczajkowski/64a7977c70b5bd6ba3c0e5d27472517f to your computer and use it in GitHub Desktop.
Async pickle
private static async Task<List<string>> DownloadTMXsAsync(List<TMInfo> tms)
{
List<Task> tasks = new List<Task>();
List<string> tmxs = new List<string>();
foreach (var tm in tms)
{
tasks.Add(Task.Run(async () =>
{
var result = await _memoQTM.DownloadTMXAsync(".", tm.Guid);
if (result.status.Equals("ok", StringComparison.InvariantCultureIgnoreCase))
tmxs.Add(result.filename);
}));
}
Task.WaitAll(tasks.ToArray());
return tmxs;
}
private static async Task<(string, string)[]> DownloadTMXsAsync(List<TMInfo> tms)
{
return await Task.WhenAll(tms.Select(x => _memoQTM.DownloadTMXAsync(".", x.Guid)));
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment