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

  FORUM HardWare.fr
  Programmation

  [VB / API] CreateThread et TerminateThread

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[VB / API] CreateThread et TerminateThread

n°11845
Styx0
Aware, abware !
Posté le 29-01-2001 à 16:43:00  profilanswer
 

Yo (re)
c encore moi,
voilà le pb auquel je me heurte encore actuellement, je créée un thread à l'aide de l'API CreateThread,
je souhaire le killer avec la fonction TerminateThread, seulement voilà, elle me retourne Faux et le code d'erreur '6'
impossible donc de killer mon thread
voici mes déclarations :
 
hThread = CreateThread(THREAD_TERMINATE, ByVal 0&, AddressOf AsyncThread, ByVal 0&, ByVal 0&, hThreadID)
 
TerminateThread hThread, lngErr
 
pour note : le Terminate et Create ne sont pas dans la meme procédure, et l'ID du thread est une variable globale
c le terminate qui me génère l'erreur


---------------
Galerie Photo (Canon)
mood
Publicité
Posté le 29-01-2001 à 16:43:00  profilanswer
 

n°11923
Styx0
Aware, abware !
Posté le 30-01-2001 à 08:22:58  profilanswer
 

Personne n'a jamais fait du multithreading ?? :(


---------------
Galerie Photo (Canon)
n°11926
BENB
100% Lux.
Posté le 30-01-2001 à 08:47:34  profilanswer
 

Mais si, mais pas sous windows et pas en basic.
 
D'une maniere generale une Thread doit se terminer d'elle meme a la fin de la startfuncution. Le fait meme que tu veuilles la tuer n'est pas normal. Il est fort probable que tu ne puisse la tuer que si elle est idle.

n°11930
BENB
100% Lux.
Posté le 30-01-2001 à 08:56:12  profilanswer
 

En POSIX il y a une methode Suspend qui permet d'arreter la thread (la rendre Idle), cherche ce genre de chose, et puis apres tu la tues et la ca devrait marcher...
 Pardon pour ma precedente reponse mais sorti du contexte cela me parraissait tres bizare.
 
Je ne peux te donner que des indication car je fais du Multithreading en POSIX et les methodes ne sont pas les memes que sous Windows...

n°11933
Guru
Posté le 30-01-2001 à 09:05:03  profilanswer
 

Il y a dans le sous système Win32 un équivalent qui est la fonction SuspendThread.ss
 
Cependant ce qui me parait troublant dans la description de l'une ou l'autre méthode (TerminateThread ou SuspendThread) c'est le fait que la documentation fait allusion à l'arrêt de l'execution en mode user du thread. Que se passe t il si le thread est entré en mode kernel lors de l'appel d'un service du kernel ?
 
Si quelqu'un peu répondre a cela, sans doute Styx tiendra une piste pour résoudre son problème car le thread qu'il souhaite arreter execute une fonction de l'api qui a de fortes chances de s'executer en mode kernel...

n°11954
Styx0
Aware, abware !
Posté le 30-01-2001 à 10:19:58  profilanswer
 

là j'avoue que g pas le temps d'approndir davantage, fo que je finisse mon client FTP pour ce soir ..
donc je descend un niveau plus bas, j'abandonne les APIs Wininet.dll, et j'attaque directement les APIs Winsock ...
dire que je devais finir ca en deux jours en tout ... :( :(


---------------
Galerie Photo (Canon)

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

  [VB / API] CreateThread et TerminateThread

 

Sujets relatifs
cherche info sur les API windowsC, API Win32, Ressources partagées
API - Est il possible de définir un temps d'execution d'une fonction[VB/API] Récupérer le login user name
Plus de sujets relatifs à : [VB / API] CreateThread et TerminateThread


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