salut a tous ,
je crois que ma question est dans le titre. j'arive pas à comprendre exactement ce point ; "code managé" "envirennement managé"
à l'aaaaaaaaaaaaaaaide SVP
salut a tous ,
je crois que ma question est dans le titre. j'arive pas à comprendre exactement ce point ; "code managé" "envirennement managé"
à l'aaaaaaaaaaaaaaaide SVP
Tout ce qui est managé, c'est tout ce qui est géré par le Framework .NET
Donc un code managé, c'est un code compilé via un langage .NET (C#, VB.NET, etc...)
Thomas LEBRUN: MCAD.NET, MCTS (Win et Web), MCPD(Win et Web) & Microsoft MVP Client Application Development
WPF par la pratique, mon livre sur WPF ! (également disponible ici ou là)
A la découverte de .NET
Quand tu compiles en dotnet, ton code n'est pas compilé en binaire directement mais dans un language intermédiaire.
Lorsque tu vas lancer ton exécutable, le CLR (Common Language Runtime) va traduire chaque partie de ton code en binaire au moment où tu en auras besoin dans l'application. Il y a donc un contrôle à tout moment par le CLR du code qu'il exécute.
Jérôme Lambert
Développeur, Architecte, Rédacteur & Fan technologies Microsoft
Ma boite informatique | Mon profil LinkedIn
Bonjour,
code managé ou code géré est le code répondant au CLI (Common Language Infrastructure).
Bye
Jérôme Lambert
Développeur, Architecte, Rédacteur & Fan technologies Microsoft
Ma boite informatique | Mon profil LinkedIn
- MVP C#
-Tout problème a une solution, le vrai problème est de trouver la solution .....
- Linux & mono : l'avenir
Il peut y avoir une baisse comme il peut ne pas y en avoir. En java, il y a HotSpot associé à la machine virtuelle qui va éventuellement recompiler en natif certaines parties du code lors de l'exécution (par exemple les parties les plus utilisées vont être optimisé et compilé en code binaire).
L'avantage par rapport à un compilateur classique est que la machine virtuelle sait exactement quelles sont les parties du code qu'il est nécessaire d'optimiser puisqu'il exécute lui même le code et peut faire du profiling en cours de route.
Je ne répondrai à aucune question technique en privé
- MVP C#
-Tout problème a une solution, le vrai problème est de trouver la solution .....
- Linux & mono : l'avenir
Si je me rappelle bien je crois que le compilo JIT est encore plus futé que ça : il va même déterminer quelles sont les méthodes susceptibles d'être les plus utilisées et le plus rapidement afin de les compiler en natif le plus vite possible. Le tout est ensuite placer en cache pour les utilisations futures.
La baisse de perf est plutôt visible à cause du GC : vider le GC est une opération assez lourdes en ressources. Les dev C++ ont de gros problèmes pour palier les fuites de mémoires, nous on doit faire attention à ne pas bourrer le GC.
La facilité du GC amène donc aussi d'autres souçis. (Je suis d'accord que fasse à la gestion de la mémoire en C++, on est est plutôt "cool" )
En traitement d'images (pour les grosses opérations) on recommande de bosser en "unsafe" : c'est une partie du code qui ne sera pas gérer par le GC (il ne manipulera pas ton objet) : tu bosseras donc avec des pointeurs, tu peux alors attaquer directement l'emplacement mémoire... Au prix bien sur de la sécurité (unsafe^^)
http://msdn2.microsoft.com/en-us/lib...b8(VS.71).aspx
http://msdn2.microsoft.com/en-us/lib...74(VS.71).aspx
Mais c'est à utiliser dans des cas vraiment très particulier.
Exactement. Mais le GC a été revu et corrigé avec le Fx 3.5 il me semble et les perf devraient être bien meilleure
( cf :
http://blogs.msdn.com/clyon/archive/...een-doing.aspx
)
- MVP C#
-Tout problème a une solution, le vrai problème est de trouver la solution .....
- Linux & mono : l'avenir
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager