J'ai un contrôle ActiveX écrit en utilisant la bibliothèque MS ATL et je déclenche des événements via pDispatch->Invoke(..., DISPATCH_METHOD)
. Le contrôle sera utilisé par un client .NET et ma question est la suivante: le déclenchement de l'événement est-il un appel synchrone ou asynchrone? Mon problème est que, si elle est synchrone, l'application qui gère l'événement pourrait causer des problèmes de performances, à moins qu'elle ne revienne immédiatement.Lancement d'événements COM en C++ - Synchrone ou asynchrone?
0
A
Répondre
4
Il est synchrone du point de vue du composant générant l'événement. Le thread d'exécution du contrôle va appeler dans le code des récepteurs et les choses sont hors de son contrôle à ce moment-là.
Les clients recevant les événements doivent s'assurer qu'ils reviennent rapidement. S'ils ont besoin de faire beaucoup de travail, ils devraient planifier cela de manière asynchrone. Par exemple en publiant un message Windows ou en utilisant un thread séparé.
Questions connexes
- 1. Messagin asynchrone ou synchrone
- 2. Socket SSL dans Windows. Bibliothèque? Synchrone/asynchrone? Threads?
- 3. C++ stdio :: rename(); synchrone?
- 4. COM Exceptions en C#
- 5. Cette méthode de conversion d'une méthode asynchrone en une méthode synchrone est-elle correcte?
- 6. Comment utiliser COM en C#
- 7. événement COM manutention en C++
- 8. Appel SP distant via des serveurs liés. Asynchrone ou non?
- 9. GetCallbackEventReference ne fonctionne pas de manière synchrone
- 10. Gestion d'un objet COM en C#
- 11. Processus de lancement en C# sans fenêtre de console distrayante
- 12. C# problème de socket asynchrone
- 13. instanciation composant COM en C# - Erreur 80070002
- 14. Comment appeler le service web en utilisant vbscript (synchrone)?
- 15. C# COM DLL: est-ce que j'utilise Regasm, ou Regsvr32?
- 16. com interop: comment consommer C# à partir d'Excel ou Access
- 17. Rappel asynchrone Objective-C de
- 18. Communication synchrone Boost.Asio
- 19. Exemples d'interaction asynchrone dans C# .Net?
- 20. Programmation asynchrone en Python Twisted
- 21. Invite personnalisée JavaScript synchrone
- 22. Opération synchrone jQuery
- 23. Animation synchrone JQuery
- 24. Faire une méthode Webservice asynchrone en C#/Winforms
- 25. C# pour VB6 événements COM (« objet ou classe ne prend pas en charge l'ensemble des événements »)
- 26. Implémentation de la méthode asynchrone
- 27. Lancement d'un programme dans différents creds ou HKCU et installeurs
- 28. écrire un contrôle com en C# et l'utiliser dans MFC
- 29. C# + COM Interop, version déterministe
- 30. Appel asynchrone à WCF avec C#?