2009-07-02 5 views
0

Dans notre application C#, nous utilisons un objet COM tiers (Thesycon) qui exécute des threads pour écrire des données dans un périphérique d'analyse à partir de 7 fichiers.Synchronisation des threads COM avec .NET

Je commence la méthode d'écriture en appelant

COM.StartWriting() 

et je peux l'arrêter en appelant

COM.StopWriting() 

Maintenant, le problème est que je suis incapable de synchroniser les threads. Cela signifie sur 7 que je manque toujours 4 fichiers. Si vous regardez dans la fenêtre Débogage, le type de thread de travail est affiché comme 'BackGround' et MTA. Comment synchroniser mes threads Main et Worker?

+4

Vous devez publier beaucoup plus d'informations sur les méthodes, propriétés et événements disponibles sur l'objet COM que vous utilisez. Et que voulez-vous dire par incapable - êtes-vous capable de modifier la source de l'objet COM mais vous ne savez pas comment? Ou est-ce un composant tiers? Et explique la séquence des événements avec plus de soin. Quel code crée les fichiers et leur donne des noms, et comment sont-ils écrits, lus, etc, et comment sont-ils "manqués"? –

Répondre

0

Si l'objet COM ne fournit aucun moyen de surveiller son processus, la réponse est NON.

Si l'objet COM fournit un mécanisme, vous devez l'utiliser pour déterminer quand vous pouvez exécuter le StopWriting.

Questions connexes