/// <summary> /// Allows to remove a SyncPoint early. /// </summary> /// <param name="syncPoint">SyncPoint to remove</param> public void RemoveSyncPoint(SyncPoint syncPoint) { Monitor.Enter(m_SyncPoints); try { m_SyncPoints.Remove(syncPoint); } finally { Monitor.Exit(m_SyncPoints); } }
/// <summary> /// Adds a SyncPoint for a one-time call of Sync (it is removed from the list after the Sync). /// </summary> /// <param name="syncPoint">SyncPoint to queue for one Sync</param> public void AddSyncPoint(SyncPoint syncPoint) { Monitor.Enter(m_SyncPoints); try { if (!m_SyncPoints.Contains(syncPoint)) { m_SyncPoints.AddLast(syncPoint); } } finally { Monitor.Exit(m_SyncPoints); } }
/// <summary> /// Adds a SyncPoint for a one-time call of Sync (it is removed from the list after the Sync). /// </summary> /// <param name="syncPoint">SyncPoint to queue for one Sync</param> public void AddSyncPoint(SyncPoint syncPoint) { Monitor.Enter(m_SyncPoints); try { if (!m_SyncPoints.Contains(syncPoint)) m_SyncPoints.AddLast(syncPoint); } finally { Monitor.Exit(m_SyncPoints); } }