Home
Browsez les 647 exemples
Téléchargez les 647 exemples
Téléchargez des chapitres
Achetez sur amazon.fr

Niveau: Débutant/Intermédiaire
ISBN-2-84177-339-6
50 Euros

Exemple 11-32 extrait du chapitre Notions de classe et d'objet


Exemple 11-31<     > Exemple 11-33


Cet exemple peut être compilé avec la ligne de commande:
csc.exe /target:library Exemple_11_32.cs
Erreurs: 0 Avertissements: 0
Remarque:


Exemple_11_32.cs
public class Article : System.IDisposable {
   public int m_Prix;
   public Article(int prix) { this.m_Prix = prix; }

   private object m_SyncRootDisposed = new object();
   private bool m_bDisposed = false;
   public void Fct() {
      lock ( m_SyncRootDisposed )
         if ( m_bDisposed )
            throw new System.ObjectDisposedException("Nom de l'objet");
      // Ici le corps de Fct().
   }
   public void Dispose() {
      bool bOldDisposedState = true;
      lock ( m_SyncRootDisposed )
         if ( !m_bDisposed ) {
            bOldDisposedState = false;
            m_bDisposed = true;
         }
      if (!bOldDisposedState ) {
         // Ici libération des ressources.
      }
   }
}	
Copyright Patrick Smacchia 2006 2007