objets et threads - C#/.NET managed - Programmation
Marsh Posté le 08-10-2008 à 18:45:33
oui c'est tout à fait normal.
Depuis .NET 2.0, un thread ne peut pas accéder au objet créer par un autre processus sous peine de se ramasser une exception "Cross Thread" machin.
Pas le choix, pour contourner ce problème, faut passer par des delegate.
Marsh Posté le 08-10-2008 à 22:07:50
hmm... J'ai pourtant fait un delegate.. ca n'a rien changé.
D'ailleurs, l'exception n'a rien à voir avec un Cross thread.
L'exception me dit qu'il essai de caster un Composant COM 'machin.truc.BiduleClass' en interface 'machin.truc.BiduleClass' ..
C'est un librairie dont je n'ai pas les sources. Ma class que j'essai d'utiliser peut être un composant COM ?
Mais, je sais que le problème vient des thread, car, sans thread, ca passe.
Moi qui vient de la programmation unix, j'ai du mal à comprendre la notion de thread sous windows qui n'est pas la même que sous unix. Les thread windows ont l'air plus proche d'un fork (mais pas complètement) qu'un thread unix..
Marsh Posté le 10-10-2008 à 19:57:38
la notion de thread sous Windows est la même que celle en UNIX. Il s'agit d'une instance d'exécution s'exécutant dans le même processus (comme un UNIX). Le fork est le démarrage d'un second processus.
Maintenant, ton objet COM, il fait quoi exactement? Le problème vient peut être de la aussi, il ne supporte peux être pas une exécution dans un Thread.
Marsh Posté le 08-10-2008 à 16:34:46
Bonjour, je débute dans le langage C#
J'ai un problème avec un thread qui ne veut pas accéder à une classe qui a été créé par son processus père.
Voici le schema (le point de départ est dans la classe 'Ailleur'
quelq'un peut m'expliquer ??