SetTimeout et setInterval

Résolu/Fermé
stefman78260 Messages postés 48 Date d'inscription mercredi 15 juin 2011 Statut Membre Dernière intervention 24 décembre 2013 - 10 déc. 2012 à 16:27
stefman78260 Messages postés 48 Date d'inscription mercredi 15 juin 2011 Statut Membre Dernière intervention 24 décembre 2013 - 13 déc. 2012 à 16:45
Hello,

Voilà, je me pose certaines questions, et je ne trouve pas forcément les réponses voulues !

C'est pourtant... tout simple !

Éclaircissez moi !

Quelle est réellement la différence entre setTimeout et setInterval ?

Et est-ce que, si dans mon code, j'ai un setTimeout('action,30000); il y a un risque qu'au bout d'un certain temps, que les process du pc soient "blindés" ?

Admettons sur cet exemple:
<script language="javascript">

function (mafonction){
    
    setTimeout(mafonction,30000);

    var horaire = new Date();
    var Minutes = horaire.getMinutes();

    var mavariable = "<img src=\"images\/monimage.jpg\" width=\"300\" height=\"300\" \/>

   var mavariable2 = "<img src=\"images\/monimage2.jpg\" width=\"600\" height=\"600\" \/>

   if (Minutes==0 || Minutes==5 || Minutes==10 || Minutes==15 || Minutes==20 || Minutes==25 || Minutes==30 || Minutes==35 || Minutes==40 || Minutes==45 || Minutes==50 || Minutes==55){
      document.getElementById("monid").innerHTML=""+ mavariable +""
   }
   else{
      document.getElementById("monid").innerHTML=""+ mavariable2 +""
   }
}
</script>


Bon, ok l'exemple est un peu bidon et un peu irréaliste, mais c'est pour un exemple, il y a mieux comme code je sais ! :-D

Est-ce que dans ce cas, si la page reste ouverte plusieurs heures, et donc que l'image vient à être modifié toutes les 5 minutes, et que le script se relance toutes les 30 secondes, il y a un risque de blindé la mémoire du pc ?

Je sais pas si je me suis bien exprimé !

Merci à toutes et à tous !

1 réponse

Stanislas Poisson Messages postés 424 Date d'inscription samedi 1 décembre 2012 Statut Membre Dernière intervention 22 mai 2018 66
10 déc. 2012 à 18:55
setTimmeout declenche la fonction preciser une seul fois, setInterval, declenche la fonction toutes les x fois la durée indiquer.
0
stefman78260 Messages postés 48 Date d'inscription mercredi 15 juin 2011 Statut Membre Dernière intervention 24 décembre 2013 2
11 déc. 2012 à 09:12
Merci, c'est bien ce qu'il me semblait ! Et pour les process quelqu'un a une idée ?
0
Stanislas Poisson Messages postés 424 Date d'inscription samedi 1 décembre 2012 Statut Membre Dernière intervention 22 mai 2018 66
11 déc. 2012 à 09:37
Tout simplement, tu vois en fonction de ce que tu veux faire, declarer a la chaine plusieurs settiemout vas blinder le processeur avec une charge qui serait plus leger avec un setinterval. penser aussi a grouper plusieurs fonction afin de ne pas surcharger les interval ou timeout.
0
stefman78260 Messages postés 48 Date d'inscription mercredi 15 juin 2011 Statut Membre Dernière intervention 24 décembre 2013 2
13 déc. 2012 à 16:45
Ok, très bien Merci !
0