À Première Vue, Le Traitement Parallèle Sonnette Comme une invitation à Déjeuner Librement - Être Capable d'Utiliseur des Processeurs MultiCœurs Plus Efficace Dévir Donner à votre Véron Boost de Vitesse. L'expériation Pratique Montre Que ce n'est pas Toujours Le CAS: Certes Problèmes Sont impossibles à Paralcarler. EN PLUS DE CELA, l'Exécution Parallèle Conduit à une Famille Entiède de Nouveaux Problèmes Qui Ne Sont Pas Vus sur des machines à base unique.
Le Code Parallèle Peut, en Principe, Estre divisé en Deux Groupes de Travail. Le Premier Groupe Est Une Augmentation de la Vitesse Classique - SI Programme Doit Passer à 3000 Images, La Scission de la Tâche Signifie Que d'Autres Images authènes Tatratés à la Fois. BIEN QUE VRAIMENT BÉNÉFIQUE, CE TYPE DE TÂCHE EST REREMENT RENCONTRÉ DANS LE DÉVÉLIPPOPIMENT WEB DE TOUS LES JOURS. (SI VOUS Créez Un site Lourd-Lourde, Assurez-vous de les Sauvegarder avec décontrôle stockage en ligne ).
La Forme La Plus Courante d'Emploi De Parallélie Fonctionne Autour de Tâches Longues Qui Né Nécessitent PAS Beaucoup de Temps Procurateur. Un exonplement BON pour Cela Autorité de la Cela ONU TÉLÉCHARGE OU UNE ENTRÉE DE PÉRIPHÉRIQUE: SI CELA EST FAIT DE MANIÈRE PARALLÈLE, LE RESTE DE L'INTERFACE GRAPHIQUE N'A PAS BESOIN D'ÊTRE BLOQUÉ. Étant Donnée Que les Utilisateurs de la Tendance à Avoir des Problèmes de Compréhension «Pourquoi Le Bouton NE CLIQUE», CELA PEUT ENTRAINER UNE Augmentation de la satisfaction des utilisateurs, Même Si la Vitesse de la Vitesse Réelle N'Augmente Pas.
SI VOUS AVEZ BESOIN DE NOUVELLES RESSOURCES POUR VOUS ARTIDE À CODER PLUS DE STEPERMENT, CONSULTEZ NOTRE GUIDE SUR LE MEILLEUR Winds de conception Web DE 2019. SI VOULEZ ÉVITER TOUT LE CODE, CONSEILLE VOYE SITE AVEC LE MEILLEUR Générateur de site Web et Assurez-vous que vous VOUS AVEZ Choiisi Le Parfait Hébergement Web Service Avec Nottre Guide.
var sommeil = Nécessite ("SOMMEIL");
Travailleur de la Fonction () {
console.log ("Travailleur Up")
SOMMEIL.MSLEEP (1000)
console.log ("Ouvrier")
}
Seinterval (Travailleur, 2000);
Tandis Que (1 == 1)
{
SOMMEIL.MSLEEP (250)
console.log ("Bonjour de Main")
} & gt;
Commençons AVEC UNE PETIT EXEMPLE EXEMPLE SUR UNE FAIREI BIEN Aimé: Le se vaciller Fonction. Il FAUT UNE RÉFÉRENCE DE FONCTION ET UNE VALEUR NUMÉRIQUE DÉLIMITÉE EN MILLISECONDES. Après Cela, La Fonction Est Périiodiquement Trioe Chaque Fois Que La Minuterie de retard expire.
NPM Installez Le Sommeil
Exemple NPM1.JS
En utilistant le dormir () La Foncelle Nécessite que NOUS CHARGONS LE MODULE DE SOMMEIL DANS ONU PROJET NPM local. IL AGIT COMME UNE INTERFACE AVEC LA BIBLIOTHÈQUE DE SOMMEIL DU SYSTÈME D'EXPLOITATION - NE VOUS Demande PAS SI LE COMPILAUR DE VOFT POSTE DE TRAVAIL EST DÉCLENCHÉ PENDANT LE DÉLOIEMENT DU COLIS.
PROGRAMME DE L'EXÉCUTION DE L'EXÉCUTION DE L'EXÉCUTE, VOUS RECORDOUVEREZ CONFRONTED À LA SORTIE SIMILAIRE À CELLE INDIQUÉE DANS LA FACILES APPABLANT CETTE ÉTAPE. Il est Évident que Notre TRAVAILLEUR TRAVAILLEUR N'EST JAMAIS FERVOQUÉ - Menuche choisi DOIT AVOIR TORT AVEC LA FONCTION SETINVALM.
Les Navigueurs Modernes Équipent Chaque Onglet AVEC UN FIL JavaScript. L'ONU REGARD ATTENTIF À NOTRE BOULE RÉVÈLE QU'IL Est INFINI. CELA SIMNIFIE QU'IL FONCTIONNERA POUR TOUJOURS ET NE DONNERA JAMAIS DE CONTRÔLE. Étant Donné Que Seinterval () Fonctionne AEC Message, SA CHARGE UTILE NE FONCTIONNE JAMAIS JAMAIS LORSQUE LE GESTILAIRE DE MESSAGES EST BLOQUÉ À PARTIR DE L'EXÉCUTION.
const bar = () = & gt; console.log ('bar')
const baz = () = & gt; console.log ('Baz')
const foo = () = & gt; {
console.log ('foo')
Settimeout (bar, 0)
Baz ()
}
foo ()
Blog de Flavio Copes ' , Fournit Nations Unies de Code Extrênemental Intéressant Illème. LORSQUES ELSE EXÉUTÉ, IL Donne la Sortie Indique sur la figure Due à la Fichier d'attente de Messagerie Bloquée Jusqu'à CE Que foo () relie le Contrôle du Fil principal.
Étant Donnée que le Système d'exploitation Sous-Jacent Est Capable d'Effecteur des Multitacâtres Préventifs, Laissez-nous Exploit Ses Capacités en Capaculant des threads Via UNE API DÉDIEE APPELÉE WEBWORKERS, QUÉNÉFICIE D'UN SOUTIEN GRAND. La figure à l'accompagnant cette étape montre la Liste Actuelle Pour la Fonctionnalité.
console.log ("Travailleur Dit Bonjour!");
console.log ("travailleur up");
Tandis Que (1 == 1)
{
console.log ("x");
}
Les webworkers NE PASUVENT PAS Démarrer AVEC UNE CHARGE UTILE DE FONCTION. Au lieu de Cela, ONU-NOUVEAU FICHIER EST REQUIS QUI CONTENANT LE CODE DESTINÉ À EXÉUTER DANS LE FIL. Dans l'exemple de Notre de Notre Exemple7Thread.js Un Indiqué de Le Contenu à l'accompagnant Cette Étape.
Travailleur de la Fed = Exiger («Travaille_threads»);
var myworker = Nouveau Travaille.worker ('./
Exemple7hread.js ');
var myworker2 = Nouveau Travaille.worker ('./
Exemple7Thread.js ');
Notre Travaille Est Prêt Pour le Temps Primaire. SPÉCIALITÉS DU NOUUD.JS Runtime NOUS OBLIGE à inclure Le module de threads OUVRIER ET LEVETTRE DANS UN CHEMIN RELATIF - Problèmes non confrontés au navigateur. En oure, ne textez pas de la Démarrage Manquant () APPEL - UN TRAVAILLEUR Web Définit LORSQUE L'instance est LIVRÉE EN LIGNE.
La Livraison de Messages Nécessite Générement UNE Essentielle d'Interaction Entre Le Temps d'Exécution et le ReSTE DU SSTEME D'EXPLOITATION. Malheureuse, Notre Boucle Sans fin Bloque CE Processus - CE QUI SIMIFIE QU'UN SEUL DES MESS MESSAGES AVANT LA "GRANDE STALLE".
Travailleur de la Fed = Exiger («Travaille_threads»);
var myworker = Nouveau Travaille.worker ('./
Exemple7hread.js ');
var myworker2 = Nouveau Travaille.worker ('./
Exemple7hread.js ');
Tandis Que (1 == 1)
{
}
UNE AUTRE EXPÉRIENCE Implique de Placer Une Boucle Vide Après Les Deux Invocations du Constructeur. Dans CE CAS, Les threads NE COMMENCERONTONON JAMAIS À FONCTIONNER - LE MESSAGE D'INVOCATION N'Arive Juma AVEC LE SYSTÈME D'EXPLOITATION.
BIEN QUE LES TRAVILLENTES QUI COURANT DES BOUCLES SANS FIN, ONT Les Problèmes Exposés CI-Dessus, Les routines du communiqueur autonome Entre Elles. Ceci est fait via une interface de passage de message de message - Pense à CELA Comme une installation Qui vous Permet de Passer Un Objet de Message d'ONU EXPÉDITE À UN DESTINATIAIRE À TRAVERS LES LIMITES DE FIL.
Outre les Avantages de la Capacité de coordonnatrès Les threads E FF FF ICITYLY (ET DE RÉUCTION DU RISQUE DE «COLLISIONS», EMÉMENT DES INPLÉS CONDITIONS DE COURS), LE MESSAGE QUI PASSSE AU FIL DU PRINCIPAIRE EST LE SEUL MOYEN D'INTERAGIR AVEC LE DOM, DUE à la di fi ff iClulty de Creer. Pile d'interface graphique à fil.
Message de Mise en Œuvre Passant Dans Le Nœud.Js Est Fastidieux. DÉplace LE CODE SUR LE WEB - Démarrer en Créant Nations Unies Harnais HTML examplpippempi.js . Code de Sachez Que CE Code NE Peut-Être Exécuté Qu'à Partir d'Unserveur Web localhost en raison de restrictions d'origine DOM.
Var Myworker = Nouveau Travailleur ('./
exempleplempithread.js ');
Var Myworker2 = Nouveau Travailleur ('./
exempleplempithread.js ');
myworker.onMessage = Fonction (e)
{
console.log (e);
}
myworker2.onMessage = Fonction (e)
{
console.log (e);
}
CHAQUE TRAVAILLEUR EXPOSE UNE PROPRIÉTÉ ONMESSAGE QUI OFFE UNE RÉFÉRENCE DE FONCTION QUI DOIT ÊTRE INVOQUÉE CHAQUE FOIS QU'UN Message Apparaît de l'Autre Extrémité. Les Messages participants Sont Simplement Simplement Transféré à la console du Navigate du Fil principal.
PostMessage ("Travailleur Dit Bonjour!");
postmessage ("travailleur up");
Tandis Que (1 == 1)
{
postmessage ("x");
}
L'Envoi de Messages à une Boîte Aux Lettres Est Accompli en invoquant La Foncelle de message Post-Message. Garder à l'Esprit Qu'un Travaille-Travaille Peut égamément METTRE EN ŒUVRE ONU surmessage Événement, Qui pourraiter Recevoir des Informations de Celui Qui "Possièdre" L'Objet d'instance de Travailleur.
À CE MOMENT-LÀ, LE CODE EST PRÊT À FONCTIONNER. LA CONSOLE DE DÉVÉLOPPPEUR N'EST PAS INONDÉE DE MESSAGES DUS À L'ICENITÉ ÉLEVÉE E FF DE L'INTERFACE MPI, CE QUI SIMIFIE QUE LES DONNÉES PUUVENT VOYAGER AUTOUR DU SSTEME E FF ICIATOSE.
L'AJOUT DE MICROSOFT DES MOTS-CLÉS ASYNC ET D'ASTRIEURE A MODIFIÉ L'HISTORIQUE DE C # ET VISUALBASIC.NET. En Principe, UNE Méthode Marquée ASYNC EST EXÉCUTEE EN COOPÉRATION AVEC LE RESTE DU Programme. Les Résultats Astusultats Astuite Ebéde Récoltés Via La Fonction Attendre.
const dormir = (millisecondes) = & gt; {
RETOURNER NOUVELLE PROMESSE (RÉSOLUTION = & GT;
Settimeout (Résolution, millisecondes))
}
Étant Donnée Que les Navigités Son Soumis à des Limitations Graves Lorsque Alas Sancit d'Accéder Aux Fonctions Naturations, Nous Ne Pouvons Pas Réutilisateur La Fonction de Sommeil MenerneNée Auparavant. En Outre, il est sous-optimal en ce sens Qu'elle a arrêté l'Ensemble du Nœud.js. L'extrait d'accompagnement de cette Étape offre une approche plus Efficace.
Code CE Renvoie Un objet de promesse - C'est un autre CLASSE DE COMMODITÉ AJOUTEE AU SCRIPT Java pour Termer de Faciliter la multiplication de multithreading. VOUS Devrez FOVOQUER SA Méthode de Résolution Via Un régler le temps , GarantiSant Que Le code DOIT «S'Asseoir» Asseez Longtemp.
Les Appels Heattus Sont Autorisés Uniquement à l'Intérieur des Fonctions Async. CELA SIMNIFIE que le Travaille A Besoin d'UNE Réécrobère - Départ en invoquant UNE FONCTION D'ASYNCHREUR. Il Gère Le Repose de l'interaction de code.
const dormir = (millisecondes) = & gt; {
RETOURNER NOUVELLE PROMESSE (RÉSOLUTION = & GT;
Settimeout (Résolution, millisecondes))
}
PostMessage ("Travailleur Dit Bonjour!");
postmessage ("travailleur up");
Ouvrier ()
Async Travailleur de la Fonction () {
Tandis Que (1 == 1)
{
postmessage ("x");
PARTICULTRE LE SOMMEIL (1000);
}
}
Les Développeurs Travaillant sur le code Nœud.js NEVENT NŒUD.JS NE DOIVENT PAS OUBLIER QUILS PUUVENT - GÉNÉRALEMENT - Créer Également des Modules Intérieur Natifs SI DES PERFORMANCES SUPPORTS EXÉVÉES SONT NÉCESSAIRES. Celles-CI autonome non séventiel Tirer Parti des Différentes API DU SYSTÈME D'EXPLOITATION, MAIS PUUVENT ÉGAUMENT ÊTRE ÉCRITES DANS LES LANGAGES DE PROGRAMMATION COMPILÉES AU CODE DE LA LAISER.
Article CET A Été Publié à l'Origine Dans Le Numérro 291 Du Magazine Creative Web Design Concepteur web . Acheter Numéro 291 .
Lire la suite:
[DIX] [DIX] [DIX] [dix] (Crédit d'image: Bloq Créatif) [DIX] SI VOUS SOUHAITEZ CAP..
[DIX] SI VOUS AVEZ MAÎTÉ [dix] Commentaire Dessiner Un Chien , VOUS SERIEZ PARTONNÉ DE PENSER QUE VOUS POURRZ OPÉRATION DE DESSINER UN LOUP AU..
[DIX] [DIX] [DIX] [dix] (Crédit d'image: futur) [DIX] ONU ENVIRONNEMENT DE DÉVÉLI..
[DIX] [DIX] [DIX] [dix] (Crédit d'image: futur) [DIX] La Création d'une page d'At�..
[DIX] [DIX] [DIX] [dix] Atypique-studio: éventuel des textures de poliigon.com - Les Textures PEUVENTE NE PAS ÊTRE REDIS..
[dix] [dix] [dix] [dix] Les développeurs frontaux ont tendance à penser aux rectangles; Rectangles ..
[dix] [dix] [dix] [dix] Il est facile de se faire prendre en essayant de développer une idée dans u..