Erp Context Table Validate Vs Release methods

Hi Epicor gurus, is there any documentation regarding these two methods in the erp context object

When to use one over the other or what are the benefits ?

 public class IceDataContext : EpiDataContext, IIceDataContext {
...
        public void Release<TEntity>(ref TEntity entity) where TEntity : LinqRow;
        [Obsolete("This does nothing. Use Validate to save changes.")]
        public int SaveChanges();
        public override int SaveChanges(SaveOptions options);
        public void Validate<TLinqRow>(TLinqRow row) where TLinqRow : LinqRow;
        public void Validate();

Thanks a lot,