Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

116
Views
Javascript Webworker cómo poner información json en el búfer de matriz

Tengo miles de cadenas pequeñas que tengo que pasar de un trabajador web a la página principal, cada una es algo como esto:

 "this string needs to be sent"

¿Cómo podría incluirlo en un búfer de matriz para aumentar la velocidad de transferencia? Entiendo cómo usar números con búferes de matriz, pero ¿cómo se usan cadenas? Estoy buscando algo como esto:

 var strings = ["str1","str2","str3",...] for (var i = 0; i < strings.length; i++) { arraybuffer[i] = //Whatever operation works to add strings[i] }
about 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Vale la pena medir y comparar el rendimiento de varias técnicas. El trabajador podría usar SharedArrayBuffer si es compatible con sus navegadores de destino (no se ejemplifica a continuación); de lo contrario, los objetos Transferrable se pueden usar con postMessage() . TextEncoder crea ArrayBuffers a partir de cadenas.

Las cadenas individuales se pueden transferir a medida que se codifican:

 const encoder = new TextEncoder() strings.forEach(s => { const encoded = encoder.encode(s) postMessage(encoded, [encoded.buffer]) })

Una matriz de cadenas podría transferirse en lotes:

 const encoded = strings.map(s => encoder.encode(s)) postMessage(encoded, encoded.map(bytes => bytes.buffer))
about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!