Add a global threading mechanism toggle for concurrency tools
Open
Nobody has claimed this yet.
enhancement
- Dominant language
- Scheme
- Stars
- 294
- Forks
- 22
- Avg merge
- 4h 54m
- Merged PRs (30d)
- 259
Description
This would allow the entire program (including pmap, agent, and other things) to be powered by green thread and vice versa, e.g:
(set-agent-send-executor! (Executors/newVirtualThreadPerTaskExecutor))
(set-agent-send-off-executor! (Executors/newVirtualThreadPerTaskExecutor))
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing the pmap and agent concurrency entry points, including set-agent-send-executor! and set-agent-send-off-executor!, to determine how their executors are selected. Define how one global green-thread versus platform-thread choice should affect every concurrency tool, then verify that pmap, agent, and the other affected tools consistently use the selected mode.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- clojure, java
- Domain
- backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100