Page 1 sur 1

[resolu] Un Thread qui se repète en boucle ?

Publié : lun. 03/nov./2008 19:00
par Ar-S
Toujours dans le floue pour les thread, j'en appelle à vous pour me venir en aide.

Voilà mon soucis.

En gros je voudrais qu'en tache de fond, mon programme récupère un contenu toutes les N secondes.

La procédure

Code : Tout sélectionner

Procedure LoopTxt()
  Delay(5000)
  txt$="voilà mon contenu"
  messagerequester("test",txt$)
endprocedure

Pour la création du thread, j'ecris :

Code : Tout sélectionner

CreateThread(@LoopTxt(), 0)

Comment faire pour que ce thread s'exécute en tache de fond toutes les N secondes ?

Publié : lun. 03/nov./2008 19:28
par Cls
Hello !

Tu peux faire quelques chose dans ce gout là (non testé) :

Code : Tout sélectionner


procedure uneFonction(timer.l)
  delay(5 * 1000)
endprocedure

repeat
  THREAD = CreateThread(@uneFonction(), 5)
  WaitThread(THREAD)
forever
ou comme ça (testé)

Code : Tout sélectionner

Procedure TacheDeFond(timer.l)

  Repeat

    MessageRequester("", "Message toute les 5s")

    Delay(timer)
    
  ForEver

EndProcedure

THREAD = CreateThread(@TacheDeFond(), 5000)

Repeat
  Delay(100)
ForEver

Publié : lun. 03/nov./2008 20:19
par Necro
En gros tu modifie ta procédure pour que sa donne sa :

Code : Tout sélectionner

Procedure LoopTxt()

Repeat  

Delay(5000)
  txt$="voilà mon contenu"
  messagerequester("test",txt$)

Forever

endprocedure
Tu as juste oublié le repeat...

Publié : lun. 03/nov./2008 23:36
par Ar-S
Necro a écrit :En gros tu modifie ta procédure pour que sa donne sa :

Code : Tout sélectionner

Procedure LoopTxt()

Repeat  

Delay(5000)
  txt$="voilà mon contenu"
  messagerequester("test",txt$)

Forever

endprocedure
Tu as juste oublié le repeat...
des fois je me bafferai, merci Necro de pointer du doigt ma débilité profonde :)

Publié : mar. 04/nov./2008 9:10
par Necro
xD y'a pas de quoi ^^ (si t'as besoin d'aide j'suis sur msn de toute manière lol)