Hello,
Ce que je cherche à faire est plutot en langage JSCRIPT.
Le but est de lancer une plateforme/page web que lorsqu'un XML a fini dêtre récupéré.
Comment cet XML est-il construit ?
En parallèle de l'exécution de mon script.
Un XML est construit et récupéré côté serveur en C# et initialise une variable globale en jscript MY_XML, initialement "".
Il faut donc s'assurer que cette variable MY_XML ne soit pas vide.
Solution :
Côté script, je cherche à bloquer l'éxécution du script et attendre la récupération de cet XML. Mon code JSCRIPT est le suivant :
Il semble que cette boucle/récursivité freeze le script.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 function openPlateforme() { window.status = "Retrieving XML ..."; waitXMLToComplete(); // SUITE DU CODE : LANCEMENT DE LA PLATEFORME ... etc etc } // fonction qui check si le XML construit côté serveur est bien rempli function waitXMLToComplete() { if(MY_XML == null || MY_XML == "") { //alert("Wait more to retrieve XML"); waitTradingXMLToComplete(); } //alert("XML retrieved !"); }
Si je décommente "alert("Wait more to retrieve XML");"
L'alerte s'affiche bien 2 - 3 fois (quand le XML est tourjous pas construit) ,
et la plateforme fini par se lancer.
J'ai l'impression que l'alert empêche le Freeze.... et tout se passe bien.
Mais bien sûr je ne veux pas afficher cette alert.
Alors les gars, avez vous un ptite solution/workaround pour faire un "wait-like until .." sans sushis
-> J'ai lu qu'un while consomme en CPU ...
-> Le setinterval/settimeout sont asynchrones et n'empêche pas l'exécution du script .. donc on peut aps trop simuler un wait ...
Thks
Partager