public void RemoveSubCancellable(IDualCancellableProgressReporter other)
        {
            lock (m_subCancellables)
            {
                m_subCancellables.Remove(other);
            }

            other.ProgressChangedEvent    -= OnSubCancellableProgressChanged;
            other.SubProgressChangedEvent -= OnSubCancellableSubProgressChanged;
        }
 public void AddSubCancellable(IDualCancellableProgressReporter other)
 {
     other.RequestCancellation = RequestCancellation;
     lock (m_subCancellables)
     {
         m_subCancellables.Add(other);
     }
     other.ProgressChangedEvent    += OnSubCancellableProgressChanged;
     other.SubProgressChangedEvent += OnSubCancellableSubProgressChanged;
 }