public int RemoveAll(Predicate <T> predicate)
 {
     lock (syncRoot) {
         return(underlyingCollection.RemoveAll(predicate));
     }
 }