Forums : Xul, Xbl, JS...

Aller à la discussion :  Plus récente Plus ancienne

# Appel asynchrone / Appel synchrone

Envoyé par : eclos

Date : 31/03/2005 09:09

Bonjour,

J'ai un script synchrone qui a besoin du résultat d'un appel asynchrone. En fait il s'agit de plusieurs appels asynchrones qui doivent se succéder de manière synchrone ...

Je cherche une fonction/une astuce pour que le script appelant soit suspendu (sans bloquer l'interface) jusqu'à ce que l'appel asynchrone termine, en fait transformer l'appel asynchrone en appel synchrone.

J'ai essayer d'utiliser une boucle sur la queue d'events mais sans trop de succès.

  const evQSvc = getService("@mozilla.org/event-queue-service;1","nsIEventQueueService");
  evQSvc.createMonitoredThreadEventQueue();
  const evQ = evQSvc.getSpecialEventQueue(CI.nsIEventQueueService.CURRENT_THREAD_EVENT_QUEUE);
  
  while( evQ.pendingEvents() ){
    evQ.processPendingEvents();
  }
  

Une idée ?
Merci,
LC

# Re: Appel asynchrone / Appel synchrone

Envoyé par : laurentj

Date : 31/03/2005 11:43

met ton script "synchrone" dans un thread. http://xulfr.org/wiki/ThreadJavascript

# Re: Appel asynchrone / Appel synchrone

Envoyé par : eclos

Date : 09/04/2005 12:24

Bonjour,

Après quelques recherches sur le sujet (Thread) j'ai trouvé plusieurs fois des indications comme quoi les thread/s ne fonctionnent pas comme ils le devraient sous Javascript (cf par exemple http://mb.eschew.org/16.php#sub_16.2.6 ).

D'accord/pas d'accord ?

Une autre idée ?

Merci,

Il n'est plus possible de poster des messages dans ce forum.


Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.

Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™ sont des marques de la fondation Mozilla.