2009-11-19 5 views
1

Nous avons une application de service Windows écrite en C# ciblée pour AnyCPU. Il fonctionne sur un serveur Win2003 (32 bits). Récemment, il a commencé à manquer de mémoire.Déplacement d'une application de 32 bits à 64 bits

Ce qui est impliqué dans le redéploiement de ce service à une boîte Win2003 (64 bits). Ai-je besoin de le recompiler et l'App aura-t-elle plus de mémoire si je ne le recompile pas?

Répondre

3

Rien de spécial si l'exe est défini pour AnyCPU- le CLR 64 bits sera chargé par défaut sur une machine 64 bits. Vous avez juste à vous assurer que vous êtes vraiment prêt AnyCPU (pas de risques incertains ou sûr 32-bit maths de pointeur, etc). Si vous exécutez tout le code managé sans PInvokes, vous devriez être en bonne forme.

+4

La vraie question est: vous manquez de mémoire parce que l'application est imparfaite, ou simplement parce que vous avez vraiment besoin de beaucoup de mémoire? Si vous fuyez, passer à 64bit ne fait que prolonger l'inévitable. – nitzmahone

+0

Ceci est une application d'impression de lettres. Chaque modèle est un XSL convertissant les données XML en un fichier wordml. La taille est ~ 300k par template. Récemment, le nombre de modèles a presque doublé. Nous ferons mieux de les garder en mémoire, mais j'ai besoin d'une solution de termes de tri – mfeingold

Questions connexes