Our website uses cookies to enhance your browsing experience.
Accept
to the top
>
>
>
Examples of errors detected by the...

Examples of errors detected by the V3190 diagnostic

V3190. Concurrent modification of a variable may lead to errors.


QuantConnect Lean

V3190 Concurrent modification of the 'start' variable may lead to errors. AlgoSeekFuturesConverter.cs 115


public void Convert()
{
  var start = DateTime.MinValue;

  var symbolMultipliers = LoadSymbolMultipliers();

  Parallel.ForEach(files, file =>
  {
    try
    {
      Log.Trace("Remote File :" + file);

      var csvFile = Path.Combine(_source.FullName,
                               Path.GetFileNameWithoutExtension(file.Name));

      Log.Trace("Source File :" + csvFile);

      if (!File.Exists(csvFile))
      {
        var csvFileInfo = new FileInfo(csvFile);
        Directory.CreateDirectory(csvFileInfo.DirectoryName);

        Log.Trace("AlgoSeekFuturesConverter.Convert(): Extracting " + file);

        Compression.Extract7ZipArchive(file.FullName, _source.FullName, -1);
      }

      // setting up local processors
      var processors = new Processors();

      var reader = new AlgoSeekFuturesReader(csvFile,
                                             symbolMultipliers,
                                             _symbolFilter);
      if (start == DateTime.MinValue)
      {
        start = DateTime.Now;                                     // <=
      }

      ....

    }
  });
}