コード例 #1
0
 private void InitFileListWithGarbageCollecting()
 {
     #region // Чудеса в решете и шаманство с освобождением памяти
     m_FilesList.Clear();
     // Соберём мусор
     GC.Collect();
     // Нужно ещё сбросить всякие EventHandler'ы
     m_FilesList = new CModifiableSourceFilesList(m_ext);
     m_FilesList.SetLoadFilesOptions(m_LoadFilesOptions);
     m_FilesList.InitFilesListBuildingCallbacks(new EventHandler(ReportFilesListBuildingStart), null, new EventHandler(ReportFilesListBuildingEnd));
     m_FilesList.InitLoadFilesCallbacks(new EventHandler(ReportLoadFilesStart), new EventHandler(ReportLoadFilesProgress), null);
     #endregion
 }
コード例 #2
0
        //protected CBaseCloneSearchExecutor()
        //   : this(CAvailableCloneSearchAlgorithms.GetAlgorithm(CloneSearchAlgoritms.HashBucketAlgorithm))
        //{}

        public CBaseCloneSearchExecutor(CBaseCloneSearchStrategy search_algorithm, ICloneExtension ext)
        {
            m_ext = ext;
            m_ProcessedClonesCounter = 0;
            m_ReportingCounter       = 0;
            m_MessageEventArgs       = new MessageEventArgs();
            m_LoadFilesOptions       = new CLoadFilesOptions();
            m_FilesList           = new CModifiableSourceFilesList(m_ext);
            m_CloneSearchProvider = new CCloneSearchProvider(search_algorithm);
            InitBackgroundThread();
            m_CloneSearchProvider.InitCloneSearchCallbacks(new EventHandler(ReportCloneSearchStart), new EventHandler(ReportCloneSearchProgress), new EventHandler(ReportCloneSearchEnd));
            //m_FilesList.InitFilesListBuildingCallbacks(new EventHandler(ReportFilesListBuildingStart), null, new EventHandler(ReportFilesListBuildingEnd));
            //m_FilesList.InitLoadFilesCallbacks(new EventHandler(ReportLoadFilesStart), new EventHandler(ReportLoadFilesProgress), null);
        }