in Core/src/Impl/Commands/DumpCommand.cs [43:77]
public async Task<int> ExecuteAsync()
{
Volatile.Write(ref mySubOpsCount, 0);
var map = new List<KeyValuePair<string, SymbolStoragePath>>();
var mapSyncObj = new Lock();
var statistics = await new LocalFilesScanner(myLogger, myDegreeOfParallelism, myIsCompressPe, myIsCompressWPdb, false, mySources,
(_, _, srcFile, dstFile) =>
{
Interlocked.Increment(ref mySubOpsCount);
lock (mapSyncObj)
{
map.Add(KeyValuePair.Create(srcFile, dstFile));
}
return Task.CompletedTask;
},
(_, _, srcFile, dstFile) =>
{
Interlocked.Increment(ref mySubOpsCount);
lock (mapSyncObj)
{
map.Add(KeyValuePair.Create(srcFile, dstFile));
}
return Task.CompletedTask;
}, myBaseDir).ExecuteAsync();
myLogger.Info($"[{DateTime.Now:s}] Done with data (warnings: {statistics.Warnings}, errors: {statistics.Errors})");
if (statistics.HasProblems)
{
myLogger.Error("Found some issues, creating was interrupted");
return 1;
}
WriteSymRef(map);
return 0;
}