func (s *Cache) SetLifetime(key string, d time.Duration) error {
	if s.removeExpired() == raiqub.WriteLocked {
		s.Unlock()
		s.RLock()
	}
	defer s.RUnlock()

	v, err := s.unsafeGet(key)
	if err != nil {
		return err
	}

	v.lifetime = d
	v.Postpone()
	return nil
}
func (s *Cache) SetLifetime(key string, d time.Duration) error {
	if s.removeExpired() == raiqub.WriteLocked {
		s.Unlock()
		s.RLock()
	}
	defer s.RUnlock()

	v, err := s.unsafeGet(key)
	if err != nil {
		return err
	}

	v.lifetime = d
	v.Postpone()
	return nil
}
// SetLifetime modifies the lifetime of specified key:value.
//
// Errors:
// InvalidKeyError when requested key could not be found.