Ist das Entsäule -Muster ohne Finalizer Sinn?C#

Ein Treffpunkt für C#-Programmierer
Anonymous
 Ist das Entsäule -Muster ohne Finalizer Sinn?

Post by Anonymous »

Angesichts dieses Code im Dispose-Muster aus msdn < /p>

Code: Select all

public class DisposableResourceHolder : IDisposable {

private SafeHandle resource; // handle to a resource

public DisposableResourceHolder() {
this.resource = ... // allocates the resource
}

public void Dispose() {
Dispose(true);
GC.SuppressFinalize(this);
}

protected virtual void Dispose(bool disposing) {
if (disposing) {
if (resource!= null) resource.Dispose();
}
}
}
Warum sollte ein Aufruf von gc.suppressFinalize (this) Wenn das Objekt keinen Finalizer hat? Wenn mein Verständnis richtig ist, erreicht das Objekt nicht einmal eine Finalization -Warteschlange, von der er zuerst entfernt werden soll. Was fehlt mir, warum empfiehlt Microsoft das?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post
  • Muster ohne Leerzeichen, gefolgt vom gleichen Muster mit
    by Guest » » in Php
    0 Replies
    26 Views
    Last post by Guest
  • Das Uno MVUX-Muster, das Flux-Muster und Fluxor
    by Guest » » in C#
    0 Replies
    30 Views
    Last post by Guest
  • Was ist der Sinn der gelöschten virtuellen Funktionen?
    by Anonymous » » in C++
    0 Replies
    9 Views
    Last post by Anonymous
  • Was ist der Sinn von RTOL in Numpys Alllose -Funktion?
    by Anonymous » » in Python
    0 Replies
    4 Views
    Last post by Anonymous
  • Was ist der Sinn von `std :: make_optional``
    by Anonymous » » in C++
    0 Replies
    5 Views
    Last post by Anonymous