PC SOFT

GRUPOS DE DISCUSSÃO PROFISSIONAL
WINDEVWEBDEV e WINDEV Mobile

Inicio → WINDEV Mobile 2024 → Lancer plusieurs TâcheParallèle
Lancer plusieurs TâcheParallèle
Iniciado por dandrimontp, jan., 20 2019 11:41 PM - 6 respostas
Membro registado
179 mensagems
Popularité : +2 (4 votes)
Publicado em janeiro, 20 2019 - 11:41 PM
Bonjour,

Je recherche le moyen de lancer plusieurs fois une tâche parallèle en incrémentant le nom de la variable d'appel.
Cela est-il possible?

Je m'explique, j'ai une ZR. A chaque fois que l'utilisateur clique sur une ligne je veux lancer une tâche parallèle dont le nom de variable de lancement serait ztache + indice est une TâcheParallèle = TâcheParallèleExécute(PROCEDURE_A_LANCER)

J'ai tenté avec ceci :
{"ztache"+Zindice} est une TâcheParallèle = TâcheParallèleExécute(PROCEDURE_A_LANCER,())
mais cela ne fonctionne pas.

Si vous avez une idée je suis preneur.

Merci à vous.
Pat
Membro registado
179 mensagems
Popularité : +2 (4 votes)
Publicado em janeiro, 21 2019 - 8:42 AM
Re,
L'objectif étant que si l'utilisateur clique sur plusieurs lignes de la ZR, autant de tâches parallèles seront lancées et je contrôle ensuite si les tâches sont terminées avec l'instruction TâcheParallèleAttend()
Membro registado
326 mensagems
Popularité : +5 (5 votes)
Publicado em janeiro, 21 2019 - 9:51 AM
Bonjour.

Peux-tu décrire ce que tu appelle "cela ne fonctionne pas" ?

Que se passe-t-il exactement ?

Un message d'erreur ? ...

Et sinon, avec ThreadExécute("Thread" + Zindice,... Tu as essayé ?
Membro registado
179 mensagems
Popularité : +2 (4 votes)
Publicado em janeiro, 21 2019 - 9:45 PM
Bonjour Stéphane,

Bien le problème est que windev m'indique qu'il ne reconnait pas la syntaxe
{"ztache"+Zindice} est une TâcheParallèle = TâcheParallèleExécute(PROCEDURE_A_LANCER,())

J'ai contourné mon problème en utilisant ThreadExécute que je lance, j'ai mis un timer pour attendre sa fin et j'ai interdit l'utilisateur de cliquer sur une autre ligne de la ZR tant que le chargement n'est pas terminé. Pas top.
Je regarderai de plus près ce problème plus tard car peu de temps devant moi. Mais merci quand même.


Merci à toi.
Membro registado
70 mensagems
Publicado em janeiro, 22 2019 - 1:00 PM
Il faut que tu fasses un tableau de tâcheParallèle.
Membro registado
179 mensagems
Popularité : +2 (4 votes)
Publicado em janeiro, 23 2019 - 9:37 AM
Bonjour Chris,

Comment cela un tableau de tâcheparallèle ?
Tu peux m'expliquer?
Merci
Membro registado
91 mensagems
Popularité : +3 (3 votes)
Publicado em janeiro, 23 2019 - 10:12 AM
Bonjour,

pour exemple :

TabTache est un tableau de TâcheParallèle
MaTachet est une TacheParallele

MaTache = TâcheParallèleExécute(PROCEDURE_A_LANCER,())

TabTAche.Ajoute(MaTache)

Bonne journée

Stéphane