Beispiel #1
0
        private void SetRuntimeCacheMissAnalyzerAndStartProcessing(RuntimeCacheMissAnalyzer analyzer)
        {
            lock (m_setRuntimeCacheMissAnalyzerAndStartProcessingLock)
            {
                // If the analyzer has already been initialized (potentially with null), abandon the results of this initialization
                if (!m_runtimeCacheMissAnalyzerInitialized)
                {
                    m_runtimeCacheMissAnalyzer            = analyzer;
                    m_runtimeCacheMissAnalyzerInitialized = true;

                    // The first one to initialize also needs to start the processor, regardless of whether it is initialized to null or not
                    m_fingerprintStoreEventProcessor.StartProcessing();
                }
            }
        }
Beispiel #2
0
 public CacheMissTimer(PipId pipId, RuntimeCacheMissAnalyzer analyzer)
 {
     m_analyzer = analyzer;
     m_pipId    = pipId;
     m_watch    = m_analyzer.Counters.StartStopwatch(FingerprintStoreCounters.CacheMissAnalysisTime);
 }