Dans mon chtio bloque (=E7a c'est du teasing ;) ) je veux g=E9rer une pil=
e=20
FiFo avec un consommateur qui est d=E9clenc=E9 par onstatechange de=20
xmlHTPResquest et un fonrisseur qui est mon script principal.
Je suis donc dans une situation de /multit=E2che/.
J'ai besoin de prot=E9ger le Fifo pour qu'une lecture ne puisse avoir lie=
u=20
au milieu d'une =E9criture. Connaissez vous un moyen de protection des=20
sections critiques ?
existe t'il l'=E9quivalent d'une fonction sleep ?
(je rends la main pendant x seconde puis je reprends o=F9 j'=E9tais).
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
O.L.
Il se trouve que Bertrand B a formulé :
Bonjour,
Dans mon chtio bloque (ça c'est du teasing ;) ) je veux gérer une pile FiFo avec un consommateur qui est déclencé par onstatechange de xmlHTPResquest et un fonrisseur qui est mon script principal.
C'est quoi une pile FiFo ? X-)
Je suis donc dans une situation de /multitâche/.
J'ai besoin de protéger le Fifo pour qu'une lecture ne puisse avoir lieu au milieu d'une écriture. Connaissez vous un moyen de protection des sections critiques ?
Moi j'utiliserais une variable qui prendrais une valeur quand une écriture est en cours, et une autre valeur quand il n'y a pas d'écriture en cours.
var locked = false;
// *** Lecture *** // Ne rien faire tant que l'accès est occuppé while(locked) {} locked = true; // le script de lecture ... locked = false;
// *** Ecriture *** Même chose. A mon que 2 écritures puissent se faire en même temps ?
-- Olivier Ligny Créateur web free-lance / www.cyber-tamtam.net
Il se trouve que Bertrand B a formulé :
Bonjour,
Dans mon chtio bloque (ça c'est du teasing ;) ) je veux gérer une pile FiFo
avec un consommateur qui est déclencé par onstatechange de xmlHTPResquest et
un fonrisseur qui est mon script principal.
C'est quoi une pile FiFo ? X-)
Je suis donc dans une situation de /multitâche/.
J'ai besoin de protéger le Fifo pour qu'une lecture ne puisse avoir lieu au
milieu d'une écriture. Connaissez vous un moyen de protection des sections
critiques ?
Moi j'utiliserais une variable qui prendrais une valeur quand une
écriture est en cours, et une autre valeur quand il n'y a pas
d'écriture en cours.
var locked = false;
// *** Lecture ***
// Ne rien faire tant que l'accès est occuppé
while(locked) {}
locked = true;
// le script de lecture ...
locked = false;
// *** Ecriture ***
Même chose.
A mon que 2 écritures puissent se faire en même temps ?
--
Olivier Ligny
Créateur web free-lance / www.cyber-tamtam.net
Dans mon chtio bloque (ça c'est du teasing ;) ) je veux gérer une pile FiFo avec un consommateur qui est déclencé par onstatechange de xmlHTPResquest et un fonrisseur qui est mon script principal.
C'est quoi une pile FiFo ? X-)
Je suis donc dans une situation de /multitâche/.
J'ai besoin de protéger le Fifo pour qu'une lecture ne puisse avoir lieu au milieu d'une écriture. Connaissez vous un moyen de protection des sections critiques ?
Moi j'utiliserais une variable qui prendrais une valeur quand une écriture est en cours, et une autre valeur quand il n'y a pas d'écriture en cours.
var locked = false;
// *** Lecture *** // Ne rien faire tant que l'accès est occuppé while(locked) {} locked = true; // le script de lecture ... locked = false;
// *** Ecriture *** Même chose. A mon que 2 écritures puissent se faire en même temps ?
-- Olivier Ligny Créateur web free-lance / www.cyber-tamtam.net
Olivier Miakinen
Dans mon chtio bloque (ça c'est du teasing ;) ) je veux gérer une pile FiFo [...]
C'est quoi une pile FiFo ? X-)
C'est une file pipeau...
existe t'il l'équivalent d'une fonction sleep ? (je rends la main pendant x seconde puis je reprends où j'étais).
Pas exactement, mais presque : http://fr.selfhtml.org/javascript/objets/window.htm#set_timeout
La différence avec une fonction sleep(), c'est que ton script n'est pas bloqué pendant l'attente. Il se termine donc si tu n'as plus rien à faire, et c'est à toi de sauvegarder le contexte puisque, par exemple, les variables locales à la fonction où tu étais n'existent plus.
-- Olivier Miakinen Troll du plus sage chez les conviviaux : le nouveau venu, avec son clan, s'infiltre dans les groupes de nouvelles. (3 c.)
Dans mon chtio bloque (ça c'est du teasing ;) ) je veux gérer une pile FiFo
[...]
C'est quoi une pile FiFo ? X-)
C'est une file pipeau...
existe t'il l'équivalent d'une fonction sleep ?
(je rends la main pendant x seconde puis je reprends où j'étais).
Pas exactement, mais presque :
http://fr.selfhtml.org/javascript/objets/window.htm#set_timeout
La différence avec une fonction sleep(), c'est que ton script n'est pas
bloqué pendant l'attente. Il se termine donc si tu n'as plus rien à
faire, et c'est à toi de sauvegarder le contexte puisque, par exemple,
les variables locales à la fonction où tu étais n'existent plus.
--
Olivier Miakinen
Troll du plus sage chez les conviviaux : le nouveau venu, avec
son clan, s'infiltre dans les groupes de nouvelles. (3 c.)
Dans mon chtio bloque (ça c'est du teasing ;) ) je veux gérer une pile FiFo [...]
C'est quoi une pile FiFo ? X-)
C'est une file pipeau...
existe t'il l'équivalent d'une fonction sleep ? (je rends la main pendant x seconde puis je reprends où j'étais).
Pas exactement, mais presque : http://fr.selfhtml.org/javascript/objets/window.htm#set_timeout
La différence avec une fonction sleep(), c'est que ton script n'est pas bloqué pendant l'attente. Il se termine donc si tu n'as plus rien à faire, et c'est à toi de sauvegarder le contexte puisque, par exemple, les variables locales à la fonction où tu étais n'existent plus.
-- Olivier Miakinen Troll du plus sage chez les conviviaux : le nouveau venu, avec son clan, s'infiltre dans les groupes de nouvelles. (3 c.)
O.L.
Olivier Miakinen avait énoncé :
existe t'il l'équivalent d'une fonction sleep ? (je rends la main pendant x seconde puis je reprends où j'étais).
Pas exactement, mais presque : http://fr.selfhtml.org/javascript/objets/window.htm#set_timeout
La différence avec une fonction sleep(), c'est que ton script n'est pas bloqué pendant l'attente. Il se termine donc si tu n'as plus rien à faire, et c'est à toi de sauvegarder le contexte puisque, par exemple
Pour se rapprocher d'une fonction sleep(), on peut aussi bricoler un truc du genre :
// usage : sleep(nbr de secondes); function sleep(temps) { t = new Date().getTime(); while(new Date().getTime()<t+temps*1000) {} }
Mais bon, JS est pas fait pour ça et IE risque de nous faire des misères en affichant une boite de dialogue, indiquant que le script tourne en boucle, et proposant de l'arrêter ...
-- Olivier Ligny Créateur web free-lance / www.cyber-tamtam.net
Olivier Miakinen avait énoncé :
existe t'il l'équivalent d'une fonction sleep ?
(je rends la main pendant x seconde puis je reprends où j'étais).
Pas exactement, mais presque :
http://fr.selfhtml.org/javascript/objets/window.htm#set_timeout
La différence avec une fonction sleep(), c'est que ton script n'est pas
bloqué pendant l'attente. Il se termine donc si tu n'as plus rien à
faire, et c'est à toi de sauvegarder le contexte puisque, par exemple
Pour se rapprocher d'une fonction sleep(), on peut aussi bricoler un
truc du genre :
// usage : sleep(nbr de secondes);
function sleep(temps) {
t = new Date().getTime();
while(new Date().getTime()<t+temps*1000) {}
}
Mais bon, JS est pas fait pour ça et IE risque de nous faire des
misères en affichant une boite de dialogue, indiquant que le script
tourne en boucle, et proposant de l'arrêter ...
--
Olivier Ligny
Créateur web free-lance / www.cyber-tamtam.net
existe t'il l'équivalent d'une fonction sleep ? (je rends la main pendant x seconde puis je reprends où j'étais).
Pas exactement, mais presque : http://fr.selfhtml.org/javascript/objets/window.htm#set_timeout
La différence avec une fonction sleep(), c'est que ton script n'est pas bloqué pendant l'attente. Il se termine donc si tu n'as plus rien à faire, et c'est à toi de sauvegarder le contexte puisque, par exemple
Pour se rapprocher d'une fonction sleep(), on peut aussi bricoler un truc du genre :
// usage : sleep(nbr de secondes); function sleep(temps) { t = new Date().getTime(); while(new Date().getTime()<t+temps*1000) {} }
Mais bon, JS est pas fait pour ça et IE risque de nous faire des misères en affichant une boite de dialogue, indiquant que le script tourne en boucle, et proposant de l'arrêter ...
-- Olivier Ligny Créateur web free-lance / www.cyber-tamtam.net
Bertrand B
Olivier Miakinen avait énoncé :
existe t'il l'équivalent d'une fonction sleep ? (je rends la main pendant x seconde puis je reprends où j'étais) .
Pas exactement, mais presque : http://fr.selfhtml.org/javascript/objets/window.htm#set_timeout
La différence avec une fonction sleep(), c'est que ton script n'est pas bloqué pendant l'attente. Il se termine donc si tu n'as plus rien à faire, et c'est à toi de sauvegarder le contexte puisque, par exempl e
Pour se rapprocher d'une fonction sleep(), on peut aussi bricoler un truc du genre :
// usage : sleep(nbr de secondes); function sleep(temps) { t = new Date().getTime(); while(new Date().getTime()<t+temps*1000) {} }
Mais bon, JS est pas fait pour ça et IE risque de nous faire des misè res en affichant une boite de dialogue, indiquant que le script tourne en boucle, et proposant de l'arrêter ...
Non pas bon ça la boucle active ... pendant ce temps l'utilisateur n'a plus la main ... ce que je veux éviter.
Olivier Miakinen avait énoncé :
existe t'il l'équivalent d'une fonction sleep ?
(je rends la main pendant x seconde puis je reprends où j'étais) .
Pas exactement, mais presque :
http://fr.selfhtml.org/javascript/objets/window.htm#set_timeout
La différence avec une fonction sleep(), c'est que ton script n'est pas
bloqué pendant l'attente. Il se termine donc si tu n'as plus rien à
faire, et c'est à toi de sauvegarder le contexte puisque, par exempl e
Pour se rapprocher d'une fonction sleep(), on peut aussi bricoler un
truc du genre :
// usage : sleep(nbr de secondes);
function sleep(temps) {
t = new Date().getTime();
while(new Date().getTime()<t+temps*1000) {}
}
Mais bon, JS est pas fait pour ça et IE risque de nous faire des misè res
en affichant une boite de dialogue, indiquant que le script tourne en
boucle, et proposant de l'arrêter ...
Non pas bon ça la boucle active ... pendant ce temps l'utilisateur n'a
plus la main ... ce que je veux éviter.
existe t'il l'équivalent d'une fonction sleep ? (je rends la main pendant x seconde puis je reprends où j'étais) .
Pas exactement, mais presque : http://fr.selfhtml.org/javascript/objets/window.htm#set_timeout
La différence avec une fonction sleep(), c'est que ton script n'est pas bloqué pendant l'attente. Il se termine donc si tu n'as plus rien à faire, et c'est à toi de sauvegarder le contexte puisque, par exempl e
Pour se rapprocher d'une fonction sleep(), on peut aussi bricoler un truc du genre :
// usage : sleep(nbr de secondes); function sleep(temps) { t = new Date().getTime(); while(new Date().getTime()<t+temps*1000) {} }
Mais bon, JS est pas fait pour ça et IE risque de nous faire des misè res en affichant une boite de dialogue, indiquant que le script tourne en boucle, et proposant de l'arrêter ...
Non pas bon ça la boucle active ... pendant ce temps l'utilisateur n'a plus la main ... ce que je veux éviter.
Bertrand B
Dans mon chtio bloque (ça c'est du teasing ;) ) je veux gérer une pile FiFo [...]
C'est quoi une pile FiFo ? X-)
C'est une file pipeau...
Beuh non First In First Out ça s'appelle aussi un tampon
existe t'il l'équivalent d'une fonction sleep ? (je rends la main pendant x seconde puis je reprends où j'étais).
Pas exactement, mais presque : http://fr.selfhtml.org/javascript/objets/window.htm#set_timeout
La différence avec une fonction sleep(), c'est que ton script n'est p as bloqué pendant l'attente. Il se termine donc si tu n'as plus rien à faire, et c'est à toi de sauvegarder le contexte puisque, par exemple , les variables locales à la fonction où tu étais n'existent plus.
J'y ai pensé mais c'est pas simple du tout puiqu'avec set_timeout tu introduit une rupture du fil de ton programme. Par contre pour le problème des variable locale tu peux utiliser les closures (je viens de les decouvrir).
function tache(par1,par2){ var par3="Quelquechose";
function declenchee{ alert(par.+par1+par2); } windows.setTimeout(declenche,5000); }
tache("par1",5);
Dans mon chtio bloque (ça c'est du teasing ;) ) je veux gérer une pile FiFo
[...]
C'est quoi une pile FiFo ? X-)
C'est une file pipeau...
Beuh non First In First Out ça s'appelle aussi un tampon
existe t'il l'équivalent d'une fonction sleep ?
(je rends la main pendant x seconde puis je reprends où j'étais).
Pas exactement, mais presque :
http://fr.selfhtml.org/javascript/objets/window.htm#set_timeout
La différence avec une fonction sleep(), c'est que ton script n'est p as
bloqué pendant l'attente. Il se termine donc si tu n'as plus rien à
faire, et c'est à toi de sauvegarder le contexte puisque, par exemple ,
les variables locales à la fonction où tu étais n'existent plus.
J'y ai pensé mais c'est pas simple du tout puiqu'avec set_timeout tu
introduit une rupture du fil de ton programme.
Par contre pour le problème des variable locale tu peux utiliser les
closures (je viens de les decouvrir).
function tache(par1,par2){
var par3="Quelquechose";
function declenchee{
alert(par.+par1+par2);
}
windows.setTimeout(declenche,5000);
}
Dans mon chtio bloque (ça c'est du teasing ;) ) je veux gérer une pile FiFo [...]
C'est quoi une pile FiFo ? X-)
C'est une file pipeau...
Beuh non First In First Out ça s'appelle aussi un tampon
existe t'il l'équivalent d'une fonction sleep ? (je rends la main pendant x seconde puis je reprends où j'étais).
Pas exactement, mais presque : http://fr.selfhtml.org/javascript/objets/window.htm#set_timeout
La différence avec une fonction sleep(), c'est que ton script n'est p as bloqué pendant l'attente. Il se termine donc si tu n'as plus rien à faire, et c'est à toi de sauvegarder le contexte puisque, par exemple , les variables locales à la fonction où tu étais n'existent plus.
J'y ai pensé mais c'est pas simple du tout puiqu'avec set_timeout tu introduit une rupture du fil de ton programme. Par contre pour le problème des variable locale tu peux utiliser les closures (je viens de les decouvrir).
function tache(par1,par2){ var par3="Quelquechose";
function declenchee{ alert(par.+par1+par2); } windows.setTimeout(declenche,5000); }
tache("par1",5);
Olivier Miakinen
[ pile FiFo ]
C'est quoi une pile FiFo ? X-)
C'est une file pipeau...
Beuh non First In First Out ça s'appelle aussi un tampon
Ça s'appelle aussi une file, mais certainement pas une pile (et je te garantis que ce n'est pas du pipeau) !
D'ailleurs dans le langage courant tu as les files d'attente au supermarché (FIFO) et les piles de plateaux à la cafétéria (LIFO).