Garbage Collection, exemple de technologie
Cet exemple initie les développeurs aux opérations garbage collection dans .NET Framework et affiche les fonctions des classes qui fonctionnent bien dans un environnement d'opérations garbage collection. L'exemple indique également de quelle façon une application peut contrôler un comportement du Garbage Collector (Garbage Collection forcé, promotion d'objets, utilisation de références faibles aux objets, par exemple).
Pour plus d'informations sur l'utilisation des exemples, consultez les rubriques suivantes :
Pour générer l'exemple à partir de l'invite de commandes :
Ouvrez la fenêtre d'invite de commandes et accédez à l'un des sous-répertoires spécifiques aux différents langages dans le répertoire GarbageCollection.
Tapez msbuild GarbageCollectionCS.sln ou msbuild GarbageCollectionVB.sln à la ligne de commande, selon votre choix de langage de programmation. Par exemple, dans le répertoire C:\Documents and Settings\Your User Name\Mes documents\Samples\Technologies\GarbageCollection\VB, tapez msbuild GarbageCollectionVB.sln pour générer la version Visual Basic.
Pour générer l'exemple à l'aide de Visual Studio :
Ouvrez l'Explorateur Windows et accédez à l'un des sous-répertoires spécifiques aux différents langages dans le répertoire GarbageCollection.
Double-cliquez sur l'icône de GarbageCollectionCS.sln ou de GarbageCollectionVB.sln, selon votre choix de langage de programmation, pour ouvrir le fichier dans Visual Studio 2005.
Dans le menu Générer, cliquez sur Générer la solution.
Pour exécuter l'exemple
Ouvrez une fenêtre d'invite de commandes et accédez au répertoire qui contient le nouveau fichier exécutable.
Tapez GarbageCollection.exe à la ligne de commande.
Notes
L'exemple est une application console. Vous devez la lancer à partir de l'invite de commandes pour afficher sa sortie.
Configuration requise
Version .Net Framework : 2.0, 1.1, 1.0
Notes
Dans l'environnement d'exécution managé, le tas garbage collection gère tous les objets de classe. Ce tas surveille la durée de vie des objets et ne les libère que lorsque aucune partie du programme ne fait référence à ces objets. Cela garantit que les objets ne manquent pas de mémoire et que les références aux objets sont toujours valides. Pour illustrer la finalisation sur un thread spécifique, l'exemple emploie la classe Thread pour récupérer le code de hachage des threads. Il révèle que le code de hachage retourné par un appel de méthode normal a une valeur différente de celle qui est retournée pendant la finalisation.
Dans le code source, l'exemple référence l'espace de noms System.Threading pour récupérer les valeurs du code de hachage des threads respectifs sur lesquels sont exécutées les méthodes d'application et les opérations garbage collection.
Voir aussi
Référence
Dispose
Finalize
GC
System.Threading
Thread
WeakReference