private void PullType(Type t) { var now = DateTime.Now; DateTime?lastPull = null; lock (m_pullTimestamps) { if (m_pullTimestamps.ContainsKey(t)) { lastPull = m_pullTimestamps[t]; } } var items = RemoteStore.GetMultiple(t, lastPull); // append to local store LocalStore.StoreMultiple(items); lock (m_pullTimestamps) { if (m_pullTimestamps.ContainsKey(t)) { m_pullTimestamps[t] = now; } else { m_pullTimestamps.Add(t, now); } } }