Est-il possible par exemple de détruire/supprimer soi-même?

NOTE: je suis intéressé par C#,Java et C++ en plus, mais comme c'est la plus académique question n'importe quelle langue va faire.

Je sais que ce problème est résoluble de l'extérieur, par l'utilisation appropriée des méthodes de langues (l'appel de free, Dispose, ou en supprimant toutes les références à l'instance).

Mon idée est que je crée une instance, et dans le constructeur , je commence le privé de la minuterie. Lorsque le compte à rebours se termine, il va appeler certains de la méthode d'instance et de détruire la variable.

Je pense qu'en C#, il devrait être possible d'appeler Dispose sur soi, lorsque l' IDisposable est mis en œuvre, mais ce ne serait pas détruire la instace.

En C++ que je pourrais appeler la destructor, mais qui aurait conduit à la fuite de mémoire, plus il est vraiment une mauvaise pratique.

En Java je n'ai aucune idée, en assignant à la this il n'est pas possible car il est final champ.

Donc est-il possible par exemple, de détruire soi-même?

en C#, je pense, est assez pour point d'exemple à null
Normalement, le GC .NET fait un assez bon travail sur son propre. À moins de créer votre fuite de mémoire en gardant un objet statique (ou autre) alors qu'il devrait être retiré par la suite. Il est plausible que vous pourriez utiliser une méthode de fabrique, ce qui ne serait pas de retour d'une référence directe à l'objet, mais d'une référence faible à la place. Il a probablement n'aide pas beaucoup; vous pouvez toujours récupérer une référence forte via la référence faible. Peut-être que la meilleure question est: quel problème est-ce que vous essayez de résoudre?
Cela dépend de ce que tu veux dire par "détruire/supprimer" en Java. Vous pouvez appeler n'importe quelle méthode sur this - qui est équivalent, par exemple en appelant dispose() sur un objet en C#. Si vous voulez dire que vous souhaitez que l'objet soit ordures collectées vous avez juste à effacer toutes les références à celui-ci et d'attendre que le garbage collector pour libre.
Dans votre scénario, ce qui devrait se produire à n'importe quel thread qui exécute actuellement une méthode d'instance de la mort de l'instance?

OriginalL'auteur jnovacho | 2013-07-05