Mon logiciel utilise intensément COM. C'est très, très lent. Y a-t-il un truc pour accélérer la communication COM?Y at-il un moyen d'accélérer COM?
Répondre
Si ce n'est déjà fait, exécutez le composant in-process plutôt que dans un processus serveur distinct (dllhost.exe
).
Kieveli: Dépend de l'environnement spécifique. Au niveau de l'API, vous choisissez le contexte de création d'un objet COM en transmettant l'argument approprié au paramètre context de la fonction CoCreateInstance. –
Qu'est-ce que cela signifie? Désolé, je suis un peu vert quand il s'agit de ce genre de choses. – max
max: C'est probablement ce que vous faites déjà. Vous devriez ajouter un peu plus de contexte à votre question pour une réponse plus utile (ou vous pouvez poser une autre question sur l'optimisation de votre situation spécifique plutôt que sur une question plus large). En attendant, vous pouvez voir http://msdn.microsoft.com/en-us/library/ms693716(VS.85).aspx pour les différentes options (process-wise) que vous avez lorsque vous créez un objet COM. –
Exécutez un outil de profilage pour mesurer exactement ce qui cause la lenteur du système. COM peut sembler être une bonne pluie à blâmer, mais parfois la lenteur est causée par des choses auxquelles on ne s'attend pas. Ce n'est pas toujours la pièce que vous comprenez le moins qui cause des problèmes.
Une fois que l'ensemble de l'application était lent à cause d'une implémentation de chaîne personnalisée qui était utilisée. L'utilisation du profileur a sauvé la journée.
- 1. Y at-il un moyen de mettre fin à un processus bloqué dans Powershell?
- 2. Y at-il un moyen d'obtenir un REPL dans pydev?
- 3. Y at-il un moyen d'éditer le fichier yok héro
- 4. Y at-il un moyen d'attraper quand ContainsFocus change?
- 5. y at-il un moyen de formater actionscript dans flashdevelop?
- 6. Y a-t-il un moyen plus rapide?
- 7. Y at-il un moyen d'exporter l'application powerbuilder au texte?
- 8. Y at-il un moyen de typedef cela?
- 9. Comment déployer un COM
- 10. Server.MapPath dans un composant COM
- 11. Existe-t-il un moyen de réduire les frais généraux associés aux appels COM externes?
- 12. Y at-il un moyen de faire un JComboBox agir comme un HTML Select?
- 13. Y at-il un moyen de faire un effet Ombre portée en XAML sur un TextBlock?
- 14. Y at-il un moyen de remplacer un texte dans un fichier PDF avec itextsharp?
- 15. Enregistrer un composant C# COM?
- 16. Existe-t-il un moyen d'activer gratuitement l'enregistrement des composants EXE COM
- 17. Y at-il un moyen de savoir si un périphérique est connecté à com1 (RS-232)?
- 18. Y at-il un moyen de trouver CSS inutilisé dans un site Web?
- 19. Y a-t-il un moyen de créer un Zend_Controller_Router qui corresponde/text mais pas/text /?
- 20. Y at-il un moyen de tester les applications Comet sans un navigateur en cours d'exécution?
- 21. Y a-t-il un moyen intégré d'afficher/cacher un élément dans jQuery?
- 22. Y at-il un moyen de fermer par programme un menuitem dans WPF
- 23. Y at-il un moyen d'installer une DLL dans le GAC dans un fichier VSI?
- 24. Y a-t-il un moyen d'envoyer un mail depuis mon application iPhone?
- 25. PHP - Y at-il un moyen de vérifier toutes les valeurs dans un tableau
- 26. Y at-il un moyen d'ajouter des transitions de filtre à un contrôle d'image?
- 27. Y at-il un moyen d'empêcher l'ouverture de DLL dans un logiciel comme le réflecteur?
- 28. Y at-il un moyen rapide de formater un XmlDocument pour l'affichage en C#?
- 29. Y at-il un moyen de créer un fichier journal sur l'iPhone
- 30. Y at-il un moyen de trouver combien de clés sont actuellement dans un NSMutableDictionary?
Vous devez fournir plus de détails - dans quoi le client et le serveur sont-ils écrits, le serveur est-il un .exe ou un .dll, comment exactement vous remarquez qu'il est déraisonnablement lent. – sharptooth