Qu'est-ce qu'un WebWorker ?

แชร์
ฝัง
  • เผยแพร่เมื่อ 12 ธ.ค. 2024

ความคิดเห็น • 51

  • @the-code-provider
    @the-code-provider 6 หลายเดือนก่อน

    Enfin un autre dev JS qui ne mets pas les points virgule comme moi 😍
    En tout cas, ta vidéo sur le multithreading est vraiment excellente, merci 1000 fois !

  • @leclerjeremy1538
    @leclerjeremy1538 3 ปีที่แล้ว +5

    Cela serait intéressant de faire une vidéo qui survole les différents webworkers, et peut être approfondir quelques uns. Je ne connaissais pas du tout cette utilisation. Merci beaucoup !

  • @steve-rolandndetsapi5139
    @steve-rolandndetsapi5139 2 ปีที่แล้ว

    Le sujet sur les Workers m'intéresse beaucoup

  • @steve-rolandndetsapi5139
    @steve-rolandndetsapi5139 2 ปีที่แล้ว

    J'ai beaucoup appris concernant les Web Workers merci

  • @yanivkoubbi3955
    @yanivkoubbi3955 2 ปีที่แล้ว

    Jai plusieurs années de dev mais tes contenus sont tres intéressants
    Je viens de decouvrir la fonction qui me fallait pour un projet au bureau merciiiii

    • @DevTheory
      @DevTheory  2 ปีที่แล้ว

      Trop bien ! 😁

  • @nelsondelize3718
    @nelsondelize3718 3 ปีที่แล้ว

    Une vidéo qui tombe à point nommé. Merci

  • @justelesnews
    @justelesnews 3 ปีที่แล้ว +1

    Vidéo très claire. Très intéressé par les autres workers !

  • @adrihm8165
    @adrihm8165 2 ปีที่แล้ว

    excellente explication merci

  • @victoretcompagnie5480
    @victoretcompagnie5480 3 ปีที่แล้ว +1

    Je connaissais pas mais ça va beaucoup me servir dans mes projets en cours

  • @MrSpacemoo
    @MrSpacemoo 2 ปีที่แล้ว

    super clair! merci

  • @pomade34
    @pomade34 2 ปีที่แล้ว

    Très bien expliqué

  • @franchescofamous1993
    @franchescofamous1993 3 ปีที่แล้ว

    Encore un tres bon contenu

  • @jjgc1504
    @jjgc1504 3 ปีที่แล้ว

    Merci superbe vidéo 👌

  • @tenchigreed
    @tenchigreed 3 ปีที่แล้ว

    Encore du bon travail, bravo

  • @jamesjarraud9976
    @jamesjarraud9976 3 ปีที่แล้ว

    top ta vidéo. je decouvre les workers 😱👍🏼

  • @ericshiroe5500
    @ericshiroe5500 3 ปีที่แล้ว

    C'est génial tout ça

  • @ibrahimadiamaka1998
    @ibrahimadiamaka1998 3 ปีที่แล้ว

    Merci super video

  • @darkangel97421
    @darkangel97421 3 ปีที่แล้ว

    Wow alors la ! :D :D Je vais utiliser ça dans mes projets directement ahah :D

    • @DevTheory
      @DevTheory  3 ปีที่แล้ว +1

      Ahah 😁

    • @darkangel97421
      @darkangel97421 3 ปีที่แล้ว

      @@DevTheory Je comprend pas j'avais mis un commentaire, il n'est plus là. j'avais dit : "J'imagine qu'on peut combiner ça avec Fetch ?

    • @DevTheory
      @DevTheory  3 ปีที่แล้ว +1

      Ah, je ne sais pas non plus pourquoi, en tout cas : je ne pense pas que ce soit utile non, car fetch ne va faire aucune opération à part attendre une réponse serveur, donc mettre ça dans un thread dédié n'est pas vraiment utile 👍

    • @darkangel97421
      @darkangel97421 3 ปีที่แล้ว +1

      @@DevTheory D'accord je comprends merci ta réponse ☺️

  • @Tel-tk1yv
    @Tel-tk1yv ปีที่แล้ว

    Vidéo top pour s'initier. Un lien pour récupérer et manipuler le code expliqué dans la vidéo aurait été parfait, un github avec les exercices...

  • @franckpichard9858
    @franckpichard9858 2 ปีที่แล้ว

    Intéressant! J'utilisais les worker dans node directement avec process, du coup on peut maintenant utiliser les workers depuis le navigateur avec webWorker, est-ce qu'il existe un webCluster comme dans process? Je vais aller voir ça

  • @nanstv
    @nanstv 2 ปีที่แล้ว +2

    La question est, que se passe t'il si je clique sur calculer pendant qu'il est déjà en train de calculer ? On peut killer le calcul en cours pour relancer ?

  • @walid1717
    @walid1717 3 ปีที่แล้ว +1

    Très bien expliqué ! Mais y a t'il un gain particulier comparé à executer une fonction lourde en simple fonction asynchrone vu qu'au final le thread ne sera pas bloqué de la même manière ?

    • @polthm
      @polthm 3 ปีที่แล้ว +1

      La réponse m'intéresse aussi :)

    • @DevTheory
      @DevTheory  3 ปีที่แล้ว +3

      Intéressante question !
      En fait une opération asynchrone s'exécute quand toutes les opérations synchrones sont finies.
      C'est à dire: dès qu'on lance la méthode asynchrone de notre calcul, elle ne sera pas exécuter tout de suite car il restera surement des tâche synchrones à faire, et que le ces tâches synchrone sont finies: alors il va se mettre à attaquer les tâches async (dont notre calcul).
      Et c'est uniquement quand il aura fini la tâche async qu'il va pouvoir revenir sur les tâches synchrones, pourquoi ? Car comme toujours : il ne peut faire qu'une chose à la fois ("single threaded").
      Donc finalement remplacer le worker par une fonction async ne ferait que retarder le problème, puisqu'aucune tâche synchrone ne serait possible tant qu'il est entrain de résoudre notre calcul async 💯
      Si ce genre de connaissances vous intéressent, je vous conseille fortement la formation JS avancé que je propose, car c'est exactement le sujet ;)
      lvc.devtheory.fr/

    • @walid1717
      @walid1717 3 ปีที่แล้ว

      @@DevTheory ok merci, très claire, vraiment un point crucial. Du coup j'ai déjà pris ta formation mais je vais revoir la partie sur l'asynchrone, quelque subtilité ont dûe m'echappé 👍

  • @steve-rolandndetsapi5139
    @steve-rolandndetsapi5139 2 ปีที่แล้ว

    J'aimerais beaucoup connaître les extensions VS Code que tu utilises pour du JS 🙏🏾

  • @electroheadfx
    @electroheadfx 3 ปีที่แล้ว

    excellent, le webwork se lance sur un thread processeur séparé aussi ?

    • @DevTheory
      @DevTheory  3 ปีที่แล้ว +1

      Je ne crois pas ! Et de ce que j'ai vu: les navigateurs ont le choix de l'implémentation qu'ils font pour le fonctionnement des webworkers, tant que les instructions bloquantes ne sont pas communes ✅

  • @augustin_
    @augustin_ 2 ปีที่แล้ว

    Les workers fonctionne t-ils avec nodejs?

  • @ilyeselayeb37
    @ilyeselayeb37 3 ปีที่แล้ว

    quelles est la meilleur solution entre créé un cluster avec plusieurs instance de notre app node et du coup de l'event loop (par exemple la lib cluster en mode dev ou pm2 en prod ) ou le web worker

    • @DevTheory
      @DevTheory  3 ปีที่แล้ว

      Ce sont deux choses assez différentes car l'un est sur le navigateur (webworkers) et l'autre sur un server (pm2 sur Node.js), donc cela va dépendre de l'endroit où tes différents calculs seront fait : client-side ou server-side

  • @stephanehenault4390
    @stephanehenault4390 3 ปีที่แล้ว

    Sa semble simpa mais je me posé une question. on peut mettre en place un loader ou encore mieux une barre de chargement ?

    • @DevTheory
      @DevTheory  3 ปีที่แล้ว

      On peut totalement ! Il suffit pour ça d'exécuter "postMessage" dans notre worker en indiquant l'avancé du calcul. Par exemple : postMessage( { type: 'progress', value: '34' }) pour indiquer que l'on en a à 34% du calcul.
      Et derrière dans notre app.js au niveau du worker.onmessage il suffit de rajouter une petite condition checkant la valeur de event.data.type pour savoir si c'est 'progress' ou 'result' disons ✅

  • @mohamedlaminefall6729
    @mohamedlaminefall6729 2 ปีที่แล้ว

    N'est-ce pas avec les fonctions asynchrone on peut faire la même chose ?

    • @DevTheory
      @DevTheory  2 ปีที่แล้ว

      Les async functions tournent toujours sur le thread principale, et donc si elles font un traitement synchrone (= pas d'attente via fetch ou setTimeout) alors cela bloquera aussi l'interactivité du site web, donc il vaut mieux un worker pour de lourdes opérations synchrones ✅

    • @mohamedlaminefall6729
      @mohamedlaminefall6729 2 ปีที่แล้ว

      @@DevTheory Et dans le cas ou on utilise .then() au lieu de await ça tourne toujours sur le même thread ?

  • @cykablyat867
    @cykablyat867 2 ปีที่แล้ว

    Ton accent me détruit XDDDD Le standarde m’a fini

  • @chlbri
    @chlbri 3 ปีที่แล้ว

    Le web worker ne fonctionne pas dans node ?

    • @DevTheory
      @DevTheory  3 ปีที่แล้ว

      Les web workers sont effectivement uniquement sous les navigateurs, par contre Node.js a des "Worker threads", cela semble similaire => nodejs.org/api/worker_threads.html

  • @SG48907
    @SG48907 2 ปีที่แล้ว

    wallah

  • @Carouan
    @Carouan 2 ปีที่แล้ว

    Monnn dieuuuu mais comment se fait-il que Chrome me signifie qu'autant de pages ne répondent pas du coup ?
    Tout le monde n'utilise pas les webworkers qui ont l'air tellement balaize ?
    Ou alors c'est peut-être parce que j'ai souvent 4, 5 fenêtres chrome ouvertes avec des dizaines d'onglets dans chacune ? Et seulement 16Go de Ram ? 🤔😅

  • @daninenglish276
    @daninenglish276 3 ปีที่แล้ว

    Je n'aime pas trop tes vidéos d'actu JS, parce que tu parles de beaucoup d'outils qu'on utilise pas forcément et tu m'explique pas ce que ça fait. Mais par contre quand tu te mets expliqué c'est juste parfait

    • @DevTheory
      @DevTheory  3 ปีที่แล้ว +1

      Merci pour ton retour ! Je pourrais clairement prendre 10 secondes pour expliquer l'outils en question avant de parler de sa mise à jour, tu as raison ✅

  • @uka87786
    @uka87786 3 ปีที่แล้ว

    First

  • @LinuxForLife
    @LinuxForLife 2 ปีที่แล้ว

    Les principes sont bien compris, mais les explications sont brouillonnent.
    Dommage !
    Intéressant néanmoins.