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

Improve threading: #32

Open
rbouqueau opened this issue Apr 9, 2016 · 2 comments
Open

Improve threading: #32

rbouqueau opened this issue Apr 9, 2016 · 2 comments

Comments

@rbouqueau
Copy link
Member

rbouqueau commented Apr 9, 2016

  • deal with specific threads (e.g. one specific for log thread logs #28 or inputs Inputs all share the same lock with the module #31 )
  • add a thread to the pool (e.g. the main thread)
  • allow merging of event loops (e.g. keyboard with video on thread 0) -> may require cooperation
  • some modules may requires to suspend -> may require cooperation (there used to be a return value system)

General good idea:

kj::Promise<kj::String> contentPromise =
    fetchHttp("http://example.com");

kj::String content = contentPromise.wait(waitScope);

question: could allow monothread with multiple inputs?

easy to say “run the event loop until this promise resolves, then return the result”.
https://capnproto.org/cxxrpc.html
msvc2015: https://github.com/gordonmcshane/capnproto/tree/vs2015

@rbouqueau
Copy link
Member Author

Related to #14

@rbouqueau
Copy link
Member Author

Modern C++ libuv wrapper: https://github.com/skypjack/uvw

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

No branches or pull requests

1 participant