web-dev-qa-db-fra.com

Différence entre system.gc () et runtime.gc ()

Quelle est la différence entre System.gc() et Runtime.gc()?

46
Andro Selva

Les deux sont les même. System.gc() est effectivement équivalent à Runtime.gc(). System.gc() appelle en interne Runtime.gc().

La seule différence est que System.gc() est une méthode de classe où que Runtime.gc() est une méthode d'instance. Ainsi, System.gc() est plus pratique.

56
Ramesh PVK

En regardant le code source: System.gc() est implémenté comme

Runtime.getRuntime().gc();

Ce n'est donc qu'une méthode pratique.

15
Andreas_D

Voir les documents

System.gc() est équivalent à Runtime.getRuntime().gc()

8
trutheality

Runtime.gc() est une méthode native alors que System.gc() est une méthode non native qui à son tour appelle Runtime.gc()

2
Debmalya Adhya

System.gc ():

1: C'est une méthode de classe (méthode statique).

2: Méthode non native (code qui n'interagit pas directement avec les ressources matérielles et système).

3: System.gc (), appelle en interne Runtime.getRuntime (). Gc ().

Runtime.gc ():

1: Méthode d'instance.

2: Méthode native (langage de programmation qui interagit directement avec les ressources matérielles et système.).

2
Shivendra Pandey

Dans le système d'exécution, le gc est une méthode d'instance, mais dans la méthode système, le gc est statique.

pour cette raison, nous préférons utiliser system.gc ().

0
sravan