public void Dispose()
 {
     _enumerable       = null;
     _sharedEnumerator = null;
     _lockObject       = null;
 }
 internal SharedEnumerator(SharedEnumerable <T> enumerable, IEnumerator <T> sharedEnumerator, object lockObject)
 {
     _enumerable       = enumerable;
     _sharedEnumerator = sharedEnumerator;
     _lockObject       = lockObject;
 }