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