IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Complément d'info sur l'utilisation de settimeout


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Inscrit en
    Août 2006
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 34
    Points : 13
    Points
    13
    Par défaut Complément d'info sur l'utilisation de settimeout
    Bonjour,

    Je souhaite différer le lancement d'une fonction dans mon script et j'ai pensé tout naturelement à la fonction settimeout.

    Mais mon script pourrait être lancé assez souvent (une fois toutes les minutes) et les fonctions retardées le seraient de plusieurs dizaines de minutes, voir plusieurs heures.

    La surcharge sur le processeur du client ne serait elle pas trop importante ? (ce qui peut arriver selon la doc javascript)
    Que me suggerrez vous par remédier à ce problème, si problème il y a.

    Merci.

  2. #2
    Membre expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Points : 3 239
    Points
    3 239
    Par défaut
    Le javascript effectue un travail CLIENT...
    Tu crois vraiment que ta page va rester ouverte plusieurs heures coté clients ??

    Et puis quel intéret ??

  3. #3
    Membre à l'essai
    Inscrit en
    Août 2006
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 34
    Points : 13
    Points
    13
    Par défaut
    Merci de ta réponse et de ta pédagogie.

    Je sais bien que le javascript est executé coté client, mais c'est le client qui utiliserai le script de maniere soutenue.

    Je ne vise pas à faire une site web, mais une apli pour un service interne d'une entreprise. La logique de la chose est donc différente.

    Je pensais utiliser quelque chose du style

    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
     
    <html>
    <head>
    <title>
    Test du timeout
    </title>
    </head>
     
     
    <script language="Javascript">
    	function lafonction(f)
    	{
    		var tmp;
     
    		tmp = f.exemple.options[f.exemple.selectedIndex].value ;
    		<!-- Traitement du formu mais la fonctionnalité qu'on veut implémenter n'est pas à faire ici -->
     
    	}
     
     
    	function exploiter()
    	{
    		var tmp;
    		<?
     
    //On vérifie que le formulaire a été envoyé avant de mettre en route le compte à rebours 
    //(ici je vérifie juste que le Select nommé "exemple" a bien une valeur sélectionnée.
    //Si ce n'est pas le cas, on ne fait rien, il faut que l'utilisateur remplisse le formulaire
    		if (isset($_POST['exemple']))
    		{
    			echo 'tmp="'.$_POST['exemple'].'";'; 
    			echo 'setTimeout("alert(\""+tmp+"\")", 5000);'; //on remplace alert par la fonction voulue
    		}
    		?>
    	}
    </script>
     
     
     
     
    <body OnLoad="exploiter()">
    <!-- La fonction exploiter() est lancée au chargement de la page -->
     
    	<form method="POST">
    		<select name="exemple">
    		<option value="test">a</option>
    		<option value="test1">b</option>
    		<option value="test2">c</option>
    			<option value="test3">d</option>
    	</select>
     
    <input type=submit value="GOGOGO!!!!" OnClick="lafonction(this.form)" />
    	</form>
     
    </body>
    </html>
    Enfin, je ne vous soumettez pas le code a l'origine car ce n'était pas le but de ma question.
    Je voulais juste savoir si multiplier les settimeout depuis une meme machine ne la ralentirai pas trop ?

  4. #4
    Membre expert
    Avatar de FremyCompany
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    2 532
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 2 532
    Points : 3 239
    Points
    3 239
    Par défaut
    Non, ca ne ralentit pas plus (et sans doute même moins) que si tu la lancais "normalement" depuis le code...

    Juste que je comprends toujours pas pk une fonction doit être exécutée une heure après une action... si ta page subit un refresh, ... ton action ne sera jamais exécutée...

  5. #5
    Membre à l'essai
    Inscrit en
    Août 2006
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 34
    Points : 13
    Points
    13
    Par défaut
    Normalement, l'utilisateur en devrait pas faire de refresh (en théorie), car sinon je serais obligé de sauvegarder le message que je veux afficher autre part. Puis à la date voulue, le rapeller et ouvrir ce que je veux.

    Cela serait bien plus compliqué à mettre en place.

    Merci de ta réponse.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Généralités] Info sur l'utilisation de thread
    Par mail.spam dans le forum WinDev
    Réponses: 5
    Dernier message: 27/07/2009, 12h01
  2. Besoin d'infos sur fonction utilisant des lookup table
    Par Phelix2003 dans le forum Langages de programmation
    Réponses: 1
    Dernier message: 24/10/2008, 11h07
  3. Complément d'Infos sur les .ini
    Par Fred2209 dans le forum Visual C++
    Réponses: 4
    Dernier message: 27/12/2006, 09h59
  4. recherche complément d'info sur instanceof
    Par SpaceFrog dans le forum Général JavaScript
    Réponses: 16
    Dernier message: 23/11/2006, 09h55
  5. [CR] Infos sur l'utilisation de dll
    Par step dans le forum SAP Crystal Reports
    Réponses: 11
    Dernier message: 09/08/2002, 11h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo