private void FindDuplicateFilesConcurrent() { if (m_allTrackList == null || m_allTrackList.Count == 0) { return; } SetCompareFilter(); SetProgressMaximum(m_allTrackList.Count); List <Track> allTracks = m_allTrackList.ToList(); m_processedIndexes.Clear(); try { for (int i = 0; i < allTracks.Count; i++) { if (m_processedIndexes.ContainsKey(i)) { continue; } Track parent = allTracks[i]; var findEqualFilesVarables = new EqualFilesInfo { AllTracks = allTracks, Parent = parent, StartIndex = i }; FindEqualFilesCuncurrent(findEqualFilesVarables); if ((i % 10) == 0) { UpdateProgress(10); } } } finally { OnSearchEnd(); } }
private void FindDuplicateFilesConcurrent() { if (m_allTrackList == null || m_allTrackList.Count == 0) { return; } SetCompareFilter(); SetProgressMaximum(m_allTrackList.Count); List<Track> allTracks = m_allTrackList.ToList(); m_processedIndexes.Clear(); try { for (int i = 0; i < allTracks.Count; i++) { if (m_processedIndexes.ContainsKey(i)) { continue; } Track parent = allTracks[i]; var findEqualFilesVarables = new EqualFilesInfo { AllTracks = allTracks, Parent = parent, StartIndex = i }; FindEqualFilesCuncurrent(findEqualFilesVarables); if ((i%10) == 0) { UpdateProgress(10); } } } finally { OnSearchEnd(); } }