Пример #1
0
 public SearchMonitorView(PropertyDatabase propertyDatabase, PropertyDatabase propertyAliases, bool delayedSync = false)
 {
     m_Disposed = false;
     if (s_PropertyDatabaseViews.TryGetValue(Thread.CurrentThread.ManagedThreadId, out var currentViews))
     {
         propertyDatabaseView = currentViews.propertyDatabaseView;
         propertyAliasesView  = currentViews.propertyAliasesView;
         m_NeedsDispose       = false;
     }
     else
     {
         propertyDatabaseView = propertyDatabase.GetView(delayedSync);
         propertyAliasesView  = propertyAliases.GetView(delayedSync);
         m_NeedsDispose       = true;
         s_PropertyDatabaseViews.TryAdd(Thread.CurrentThread.ManagedThreadId, this);
     }
 }
Пример #2
0
 void MergeStoresToFile()
 {
     // TODO: When trackers are removed, put back GetView()
     using (var view = new PropertyDatabaseView(this, m_LocalVolatileStore, m_LocalStore, m_FileStore, m_StringTable, false))
         view.MergeStores();
 }