Rumah  >  Artikel  >  hujung hadapan web  >  Serbuan pada Sambungan API Javascript HTML5 1—Pelaksanaan Asynchronous Pekerja Web dan Gambaran Keseluruhan Berkaitan_html5 kemahiran tutorial

Serbuan pada Sambungan API Javascript HTML5 1—Pelaksanaan Asynchronous Pekerja Web dan Gambaran Keseluruhan Berkaitan_html5 kemahiran tutorial

WBOY
WBOYasal
2016-05-16 15:50:041315semak imbas

Mekanisme pelaksanaan JavaScript , dsb.), tetapi pada dasarnya, pengendalian program masih dilakukan oleh enjin JavaScript dalam cara penjadualan satu benang. Benang pekerja yang diperkenalkan dalam HTML5 membolehkan enjin Javascript sebelah penyemak imbas melaksanakan kod Javascript secara serentak, dengan itu mencapai sokongan yang baik untuk pengaturcaraan berbilang benang sebelah pelayar.
Berbilang utas dalam Javascript - WebWorker

Web Worker dalam HTML5 boleh dibahagikan kepada dua jenis utas yang berbeza, satu ialah utas khusus Pekerja Dedicated, dan satu lagi adalah utas kongsi Dikongsi Pekerja. Kedua-dua jenis benang mempunyai tujuan yang berbeza.
Pekerja web yang berdedikasi

Pekerja yang berdedikasi disambungkan kepada skrip yang menciptanya. Ia boleh berkomunikasi dengan pekerja lain atau komponen penyemak imbas, tetapi ia tidak boleh berkomunikasi dengan DOM. Maksud berdedikasi, saya fikir, adalah bahawa thread ini hanya mengendalikan satu keperluan pada satu masa. Benang khusus dilaksanakan dalam pelbagai pelayar arus perdana kecuali IE dan boleh digunakan dengan yakin. Membuat utas

Membuat pekerja adalah sangat mudah hanya hantar nama fail fail JavaScript yang perlu dilaksanakan dalam utas kepada pembina. Komunikasi utas

Untuk berkomunikasi antara utas utama dan sub-utas, kaedah postMessage dan onmessage objek utas digunakan. Tidak kira siapa yang menghantar data kepada siapa, pengirim menggunakan kaedah postMessage, dan penerima menggunakan kaedah onmessage untuk menerima data. postMessage hanya mempunyai satu parameter, iaitu data yang dipindahkan, dan onmessage juga mempunyai hanya satu parameter Jika ia adalah peristiwa, data yang diterima diperoleh melalui event.data. Hantar data JSON

JSON ialah sesuatu yang disokong secara asli oleh JS. Gunakan JSON untuk menghantar data yang kompleks. Contohnya:


Salin kod
Kodnya adalah seperti berikut:
postMessage({ 'cmd': 'init', 'timestamp': Date.now()});


Mengendalikan ralat

Apabila ralat berlaku dalam urutan, ralatnya panggilan balik acara akan dipanggil. Jadi cara untuk mengendalikan ralat adalah sangat mudah, iaitu dengan mengaitkan peristiwa onerror contoh utas. Fungsi panggil balik ini mempunyai ralat parameter, yang mempunyai 3 medan: mesej - mesej ralat - fail skrip tempat ralat berlaku - baris tempat ralat berlaku; Hancurkan benang

Di dalam benang, gunakan kaedah tutup untuk memusnahkan dirinya sendiri. Dalam utas utama di luar utas, gunakan kaedah tamat contoh utas untuk memusnahkan utas. Mari kita lihat operasi asas benang daripada contoh: Kod HTML:




Salin kod
Kodnya adalah seperti berikut :
content="text/ html; charset=utf-8" />
pekerja web