Disposer.cs 399 B

123456789101112131415161718192021222324
  1. using System;
  2. using Base;
  3. namespace Model
  4. {
  5. public abstract class Disposer : Object, IDisposable
  6. {
  7. protected Disposer(): base(IdGenerater.GenerateId())
  8. {
  9. DisposerManager.Instance.Add(this);
  10. }
  11. protected Disposer(long id): base(id)
  12. {
  13. DisposerManager.Instance.Add(this);
  14. }
  15. public virtual void Dispose()
  16. {
  17. DisposerManager.Instance.Remove(this);
  18. this.Id = 0;
  19. }
  20. }
  21. }