2013-03-07 2 views

Répondre

7

Bien sûr, ils le font, comme toute autre fonction normale. Comment peuvent-ils être exécutés à l'exécution s'ils ne seraient pas "stockés" quelque part en mémoire?

Mais si vous demandez si elles consomment plus de mémoire à chaque appel (comme dans l'allocation de mémoire dynamique), puis non, ils ne le font pas eux-mêmes.

2

Chaque chose aura besoin d'une sorte de mémoire de sauvegarde en mémoire, oui.

1

La définition d'un délégué définit une nouvelle classe. Donc, cela nécessite de la mémoire pour stocker des informations sur la classe (également au moment de l'exécution).

La définition d'un Func ou Action avec des types génériques spécifiques définit (caché à vous) une nouvelle classe lors de l'exécution. Donc, cela a aussi besoin de mémoire.

Les méthodes anonymes sont transformées en une méthode normale avec un nom charabia par le compilateur, et mis dans une classe privée. Puis, comme toute autre méthode, il faudra la mémoire lors de l'exécution pour stocker le code qui doit être exécuté. Et la classe exigera un peu de mémoire, tout comme les autres classes.

Questions connexes