andywer / andywer/threads.js

Should we support passing functions to workers?

Open
#145 25 comments 8 reactions 0 assignees View on GitHub
discussion help wanted
Dominant language
TypeScript
Stars
3.5k
Forks
173
PR merge metrics
No merged PRs in 30d

Description

In v0.x we built the library around the idea of passing functions to the worker that would be serialized, passed as a message, deserialized and then executed in the worker.

This approach has some subtle, yet strong limitations, though. That's why v1.0 does not support passing functions anymore, in order to prevent people from running into those not-always-obvious issues.

Maybe there are use cases where one really needs to be able to pass functions to workers. Then we need to make sure, though, that the user is aware of the passed function's limitations:

- Cannot access any variable declared outside the functions scope
- Cannot `import` or `require()` other modules in the function (at least not in the browser when bundling)

In response to #141, #144.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.