avajs/ava

Enable value transfers in shared worker messages

Ouverte

#2 733 ouverte le 6 avr. 2021

 (2 commentaires) (0 réaction) (0 personne assignée)JavaScript (1 408 forks)batch import
enhancementhelp wantedscope:shared-workers

Métriques du dépôt

Stars
 (20 600 étoiles)
Métriques de merge PR
 (Aucune PR mergée en 30 j)

Description

From #2705, when publishing shared worker messages, or replying to an individual message, we should enable values to be transferred.

I don't think a second "transfer list" API is a good fit for the shared worker API. Perhaps we could add a chaining API like .transferring(buffer1, messagePort2).publish({buffer1, messagePort2}) and .transferring(buffer1, messagePort2).reply({buffer1, messagePort2}).

Values can only be transferred once. This also means we can't add this to the .broadcast() method.

See:

https://github.com/avajs/ava/blob/0e5cc7dc2b1512d0abe9bfba57b26888eedea0cf/plugin.d.ts#L35

https://github.com/avajs/ava/blob/0e5cc7dc2b1512d0abe9bfba57b26888eedea0cf/plugin.d.ts#L41

Guide contributeur