Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
990 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  threads, suspend() et resume() (nouveau pb dernier post)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

threads, suspend() et resume() (nouveau pb dernier post)

n°356825
LeMakisar2
Posté le 09-04-2003 à 16:39:45  profilanswer
 

encore moi avec mes p*** de TThread :D
J'ai un problème, à mon avis je dois avoir foutu un bordel monstre au niveau de l'organisation mais n'ayant trouvé d'exemple nulle part j'ai pas pu faire autrement :  
j'ai donc mon thread d'envoi de données, que je crée et appelle à partir d'une classe X.  
seulement dans ce thread envoi, j'utilise une fonction d'une classe Y. Donc problème, qd j'utilise Suspend() ou Resume() ben forcément c'est pas sur le même objet et pouf ca marche pas :/ acces violation je c pas trop quoi ...
le problème, c'est que je suis obligé de lancer ce thread dans la classe X, pour récupérer 2 pointeurs utiles pour la manip, et bien sur il faut que je recrée un thread envoi dans la classe Y, ne pouvant pas utiliser celui de la classe X.
Qui plus est le thread envoi et un autre thread reception qui doivent fonctionner ensemble, se donnent la priorité l'un à l'autre avec Suspend et Resume ... donc voila c pas la joie ...
 
Donc si vous aviez une idée, ou alors un endroit où trouver des sources histoire d'avoir des exemple d'utilisation, ce serait génial.
 
Ah aussi dernière chose, dans la fonction de la classe X où je lance mon thread, directement après j'ai un while, dans lequel il y a une condition à respecter qui dépend de ce thread. donc en gros, ca quitte la boucle directement et le thread démarre après :D
la aussi des exmples ou idées ce serait cool :)
 
Merci ! :jap:


Message édité par LeMakisar2 le 14-04-2003 à 07:57:37
mood
Publicité
Posté le 09-04-2003 à 16:39:45  profilanswer
 

n°357477
LeMakisar2
Posté le 10-04-2003 à 10:43:28  profilanswer
 

Au secours à l'aide !!! je comprends rien je vais exploser le PC tellement ca me prend la tête :D
 
Bon on reprend depuis le début. On me dit de créer un objet thread, soit. Je crée donc un objet thread pour chaque fonction à lancer en temps que thread. Deja est ce que je fais une connerie ?
Parce qu'au final mon gros problème c'est qu'entre mes 4 classes mes différents threads sont incapables de se voir. Je comprends plus rien la :/
Comment faire donc pour qu'un objet thread puisse être vu de toutes les classes ? dans un thread j'appelle des fonctions, et ds certaines de ces fonctions j'utilise les Suspend() et Resume() sauf que ca marche jamais.
 
Please ! en plus imfaisable de trouver un exemple sur google ca sort tjrs des pages de Java qui en plus sont nulles ... c tjrs des exemples à la con en +

n°357632
Konar
Posté le 10-04-2003 à 12:23:28  profilanswer
 

j'ai pas tout compris a ce ke tu voulais, mais essayes deja de mettre une sorte de struct en globale, ou tu mettras un pointeur sur toutes tes classes utilisées, et tous les objets ke tu pourras avoir besoin...

n°357670
LeMakisar2
Posté le 10-04-2003 à 13:33:59  profilanswer
 

ben oui en fait c'est bien ca mon pb, c'est que je crée mes threads ds des fonctions membre d'une classe, et donc je peux pas y accéder ailleurs :D
Comment on fait pour mettre des variables globales ? en C c'est tout con suffit de le mettre en haut, mais la :??:
 
Jcrois que ce truc va d'ailleurs m'aider pas mal pour le reste :D

n°357690
Konar
Posté le 10-04-2003 à 13:57:06  profilanswer
 

LeMakisar2 a écrit :

ben oui en fait c'est bien ca mon pb, c'est que je crée mes threads ds des fonctions membre d'une classe, et donc je peux pas y accéder ailleurs :D
Comment on fait pour mettre des variables globales ? en C c'est tout con suffit de le mettre en haut, mais la :??:
 
Jcrois que ce truc va d'ailleurs m'aider pas mal pour le reste :D


 
pour mettre des globales en C++, me semble ke c'est pareil qu'en C, tu les mets en haut, en extern ou non.
 
par contre des gens vont te dire ke mettre plein de globales c'est crade, et ils auront ptet raison, mais apres si ca t'arrange, fais le sans hesiter...

n°358108
LeMakisar
Posté le 10-04-2003 à 18:13:55  profilanswer
 

ben merci :)
c'est ce que j'ai fait et ca marche :)
bon maintenant il me reste un problème de lenteur extreme, mais je me suis pas encore penché dessus, c surement une tite connerie :)
La suite à demain :D

n°360085
LeMakisar2
Posté le 14-04-2003 à 07:56:47  profilanswer
 

bon j'ai résolu mon problème de lenteur :)
Par contre, j'ai remarqué que qd on crée un thread et qu'on ne le lance pas directement, on peut appeler une fois la méthode resume() pour le lancer, mais une fois qu'il a fini de s'exécuter, on ne peut pas relancer ce thread avec resume() ... j'ai vu sur la doc en ligne qu'il fallait créer un TThreadList, mais je vois pas trop la différence au final ... pis c pas très coimpréhensible le code qu'ils filent en exemple, enfin disons, je vois pas trop ou placer ca :??:


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  threads, suspend() et resume() (nouveau pb dernier post)

 

Sujets relatifs
[Javascript] Envoi d'une requête HEAD ou POST et lecture de la réponse[PERL] Problême de data sharing entre plusieurs threads...
Synthaxe de la QUERY qui SELECT le dérnier RECORD d'un FIELD !!!!Lancer plusieurs threads en python
Je suis (à nouveau) perdu dans Access...variables de variables et $_POST[]
[DELPHI] Du nouveau avec mes cours niveau 5èmemethod Post ds les liens
C'est chaud l'utilisation de threads ?[PHP] [FORMULAIRE] Method="post" ==> HTTP 405 - Ressource non autorisé
Plus de sujets relatifs à : threads, suspend() et resume() (nouveau pb dernier post)


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR