Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Redesign the core/executor #652

Closed
petr-tik opened this issue Sep 8, 2019 · 1 comment · Fixed by #685
Closed

Redesign the core/executor #652

petr-tik opened this issue Sep 8, 2019 · 1 comment · Fixed by #685

Comments

@petr-tik
Copy link
Contributor

petr-tik commented Sep 8, 2019

As mentioned in #638 (comment), our core/executor relies on the scoped_pool crate, which looks abandoned over the last 2 years.

The Executor struct relies on a ThreadPool from scoped_pool but the comments mention Rayon's ThreadPool.

Using development activity as an indicator, Rayon looks like a better long-term dependency to use when building a core executor than scoped_pool.

Rayon provides a scope method to create a scope inside a ThreadPool. However, it requires the FnOnce to exhibit the Send trait.

This discussion outlines pros and cons of this approach and how other people suggest working around it.

If rayon doesn't work, we can roll our own on top of Crossbeam

@fulmicoton
Copy link
Collaborator

I'm generally ok with this as long as it works! :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants