Comment : gérer manuellement des graphiques mis en mémoire tampon
Mise à jour : novembre 2007
Pour les scénarios de mécanisme de double tampon plus avancés, vous pouvez utiliser les classes .NET Framework pour implémenter votre propre logique de mécanisme de double tampon. La classe responsable de l'allocation et de la gestion des mémoires tampon de graphiques individuelles est la classe BufferedGraphicsContext. Chaque application a son propre BufferedGraphicsContext par défaut qui gère tout le mécanisme de double tampon par défaut pour cette application. Vous pouvez récupérer une référence à cette instance en appelant le Current.
Pour obtenir une référence au BufferedGraphicsContext par défaut
Utilisez la propriété Current, comme le montre l'exemple de code ci-dessous.
Dim myContext As BufferedGraphicsContext myContext = BufferedGraphicsManager.Current
BufferedGraphicsContext myContext; myContext = BufferedGraphicsManager.Current;
Remarque : Vous n'avez pas besoin d'appeler la méthode Dispose sur la référence BufferedGraphicsContext que vous recevez de la classe BufferedGraphicsManager. Le BufferedGraphicsManager gère toute l'allocation de mémoire et la distribution pour les instances de BufferedGraphicsContext par défaut.
Pour les applications à forte intensité graphique telles que les animations, vous pouvez parfois améliorer les performances en utilisant un BufferedGraphicsContext dédié à la place du BufferedGraphicsContext fourni par BufferedGraphicsManager. Cela vous permet de créer et de gérer des mémoires tampon de graphiques individuellement, sans la baisse des performances liée à la gestion de tous les autres graphiques mis en mémoire tampon et associés à votre application, même si la mémoire consommée par l'application sera supérieure.
Pour créer un BufferedGraphicsContext dédié
Déclarez et créez une nouvelle instance de la classe BufferedGraphicsContext, comme illustré dans l'exemple de code suivant.
Dim myContext As BufferedGraphicsContext myContext = New BufferedGraphicsContext ' Insert code to create graphics here. ' On a nondefault BufferedGraphicsContext instance, you should always ' call Dispose when finished. myContext.Dispose()
BufferedGraphicsContext myContext; myContext = new BufferedGraphicsContext(); // Insert code to create graphics here. // On a non-default BufferedGraphicsContext instance, you should always // call Dispose when finished. myContext.Dispose();
Voir aussi
Tâches
Comment : restituer manuellement des graphiques mis en mémoire tampon
Concepts
Graphiques mis deux fois en mémoire tampon