Não há dúvida de que Javascript. a operação do usuário. Obrigado, o HTML5 nos fornece um mecanismo multi -thread.
1. Classe de Trabalhador 1. Introdução ao método(1) Construindo a função New Worker (ARG): o parâmetro representa o arquivo JS onde o código que você deseja executar, como 'myworker.js', e o construtor está obviamente retornando uma instância de uma classe de trabalhador
(2) trabalhador.PostMessage (Mensagem): Este método indica que o envio de mensagens do thread principal para sub -threads ou sub -Threads enviam mensagens para o thread principal.
(3) Há também um evento de mensagem no trabalhador.
Você pode ver que a API da classe Woker é bastante concisa.
//main.html <!!!! </head> <div id = out> </div> <time de entrada = nome do texto = id = txt> <botão id = btn> envia </button> <script type = text/javascript> var ou (Out); Script> </html> // Thread1.jsonMessage tion (evento) {var res = event.data+bonito! ;
Quando eu entro na caixa de texto grande ~ urso clique no botão de envio, haverá o seguinte efeito
Análise e análise simples, criei um trabalhador do trabalhador no thread principal por Trip1.js. .js fazer o que tal? Sim, ele ouviu o incidente da mensagem. , Então envie de volta. O tópico principal também ouviu o evento de mensagem do Worker, para que a mensagem seja acionada no passado e o conteúdo da mensagem é exibido no DIV, para que o efeito acima seja visto.
Talvez você use isso? É realmente inútil aqui. Operação, porque sua complexidade é O (1) (haha, ele está estudando algoritmos recentemente!), Mas se não fosse por uma operação tão simples? A vantagem desse método é que o seu sub -threads complicado, você não interrompe o thread principal
O professor Lu poderá ligar para o novo trabalhador () para criar um novo sub -thread no sub -thread Verifiquei o documento oficial e descobriu que não havia descrição relevante.
Vejamos um exemplo de chamar vários sub -threads no tópico principal:
//main.html <!!!! </head> <div id = out> </div> <time de entrada = nome do texto = id = txt> <botão id = btn> envia </button> <script type = text/javascript> var ou (OUT); .PostMessage (PostData);}, false); out.innerText = e.data;}, false); ; ;
O tópico principal requer dois threads para concluir uma tarefa. Com o resultado final, é exibido na página.
Outros arquivos JS podem ser introduzidos no Sub -Threads e depois chamados, como o exemplo do lado inferior.
//main.html <!!!! </head> <div id = out> </div> <time de entrada = nome do texto = id = txt> <botão id = btn> envia </button> <script type = text/javascript> var ou (OUT); );}, False); res = manipulador (event.data); }
Pode -se observar que nosso Thread1.js não possui um arquivo chamado Tools.js, mas importa um arquivo JS através do ImportScripts () e, em seguida, você pode chamar o método exposto.
Segundo, classe compartilhadaA essência do trabalho compartilhado está no compartilhamento.
Exemplos diretos para discutir.
Como usar um://main.html <!!!!! SharedWorker ('Shared.js'); Data;} </sCript> </body> </html> // shared.jsonConnect = function (e) {var porta = e.ports [0];
Este é um exemplo do W3C.
<! 'Shared.js'); , false) ;; E.Ports [0]; E.Target.PostMessage ('Pong');
O primeiro método é ouvir o evento de mensagem usando o identificador de evento. Eles são diferentes do trabalhador.
Então, como o SharededWorker compartilha dados? Veja o exemplo a seguir.
// main1 e main2 são assim <! = Nome do texto = id = txt> <botão ID = Get> Get </botão> <Button ID = Setton (Get '); ) {log.innerText = e.data;}, false); valor);}, false); ) {var porta = e.ports [0]; }}
Análise aqui, inserimos os dados na caixa de texto do Main1.html, clique em Conjunto e, em seguida, clique no método GET em Main2.html para obter os dados que definimos em main1.html casos únicos, assim como a classe estática em Java, não importa quantas notícias, na verdade, existe apenas uma, para que nossos diferentes tópicos possam compartilhar dados no SharedWorker. Aqui está a imagem.
Finalmente, vamos resumir, trabalhador e trabalhador compartilhado não têm enforcamento, ou seja, mover o trabalho em frente ao palco para fazê -lo nos bastidores sem interromper o trabalho em frente ao palco. É o So So -chamado dez minutos no palco e dez anos fora do palco. Colocando, apenas o melhor lado do seu melhor lado está no palco, dez minutos é suficiente!