Le garbage collection (GC) est une forme de gestion automatique de la mémoire qui tente de récupérer les déchets ou la mémoire occupée par des objets qui ne sont plus utilisés par le programme.
Si j'ai le code suivant: MyClass pClass = new MyClass(); pClass.MyEvent += MyFunction; pClass = null; PClass sera-t-il ramassé? Ou restera-t-il toujours en train de déclencher ses événements chaque fois qu'ils se produisent? Dois-je effectuer les opérations suivantes pour autoriser le garbage collection? MyClass pClass = new MyClass(); pClass.MyEvent += …
Considérez le code ci-dessous: public class Class1 { public static int c; ~Class1() { c++; } } public class Class2 { public static void Main() { { var c1=new Class1(); //c1=null; // If this line is not commented out, at the Console.WriteLine call, it prints 1. } GC.Collect(); GC.WaitForPendingFinalizers(); Console.WriteLine(Class1.c); …
J'ai enregistré le bogue Chrome suivant , qui a conduit à de nombreuses fuites de mémoire graves et non évidentes dans mon code: (Ces résultats utilisent le profileur de mémoire de Chrome Dev Tools , qui exécute le GC, puis prend un instantané du tas de tout ce qui n'a …
Nous voyons un certain nombre de TimeoutExceptionsdans GcWatcher.finalize, BinderProxy.finalize, et PlainSocketImpl.finalize. Plus de 90% d'entre eux se produisent sur Android 4.3. Nous recevons des rapports à ce sujet de Crittercism des utilisateurs sur le terrain. L'erreur est une variation de: " com.android.internal.BinderInternal$GcWatcher.finalize() timed out after 10 seconds" java.util.concurrent.TimeoutException: android.os.BinderProxy.finalize() timed …
Le conseil général est de ne pas appeler à GC.Collectpartir de votre code, mais quelles sont les exceptions à cette règle? Je ne peux penser qu'à quelques cas très spécifiques où il peut être judicieux de forcer un ramassage des ordures. Un exemple qui me vient à l'esprit est un …
D'après ce que je comprends, le garbage collection en Java nettoie certains objets si rien d'autre ne «pointe» vers cet objet. Ma question est, que se passe-t-il si nous avons quelque chose comme ça: class Node { public object value; public Node next; public Node(object o, Node n) { value …
J'ai cherché, mais je n'ai pas très bien compris ces trois concepts. Quand dois-je utiliser l'allocation dynamique (dans le tas) et quel est son réel avantage? Quels sont les problèmes de statique et de pile? Puis-je écrire une application entière sans allouer de variables dans le tas? J'ai entendu dire …
En Python, si vous ouvrez un fichier sans appeler close(), ou fermez le fichier sans utiliser try- finallyou l' withinstruction " ", est-ce un problème? Ou est-il suffisant, en tant que pratique de codage, de s'appuyer sur le garbage collection Python pour fermer tous les fichiers? Par exemple, si on …
Existe-t-il un moyen de libérer de la mémoire en Java, similaire à la free()fonction C ? Ou est-ce que définir l'objet sur null et s'appuyer sur GC est la seule option?
Dans mes classes, j'implémente IDisposable comme suit: public class User : IDisposable { public int id { get; protected set; } public string name { get; protected set; } public string pass { get; protected set; } public User(int UserID) { id = UserID; } public User(string Username, string Password) …
Commencez par ces classes simples ... Disons que j'ai un simple ensemble de classes comme celui-ci: class Bus { Driver busDriver = new Driver(); } class Driver { Shoe[] shoes = { new Shoe(), new Shoe() }; } class Shoe { Shoelace lace = new Shoelace(); } class Shoelace { …
Fermé. Cette question ne répond pas aux directives de Stack Overflow . Il n'accepte pas les réponses actuellement. Vous souhaitez améliorer cette question? Mettez à jour la question pour qu'elle soit pertinente pour Stack Overflow. Fermé il y a 5 ans . Améliorez cette question Je recherche des documents décrivant …
Nous développons un programme qui reçoit et transmet des "messages", tout en gardant un historique temporaire de ces messages, afin qu'il puisse vous dire l'historique des messages si demandé. Les messages sont identifiés numériquement, mesurent généralement environ 1 kilo-octet et nous devons conserver des centaines de milliers de ces messages. …
Quand je lance 'git gui', j'obtiens une fenêtre contextuelle qui dit Ce référentiel contient actuellement environ 1500 objets en vrac. Il suggère ensuite de compresser la base de données. Je l'ai déjà fait et cela réduit les objets lâches à environ 250, mais cela ne supprime pas la fenêtre contextuelle. …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.