-
Notifications
You must be signed in to change notification settings - Fork 13
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
Support non-stop #26
Comments
If we're going to wind up having async behavior then we'll either need to split networking and the handler into separate threads and use |
The server can also send output to gdb while gdb is waiting for a stop reply -- the I think it would be best if this code were just always async and then sometimes pretended to be sync for the protocol's sake. |
If the server code were always async, then I think |
See https://github.com/tromey/rust-gdb-remote-protocol/tree/multi-threaded for a draft of how this could work. So far that just implements the threading bits: the reading is done in one thread, and the handlers and response writing are done in whichever thread called After this the idea would be that target-continuing functions (whatever The The |
Actually they can't be single use in non-stop mode. And, in all-stop mode, it's expected that any stop will stop all threads -- so this information has to be exposed. See https://github.com/tromey/rust-gdb-remote-protocol/tree/client-state for some more work in this area. Also the |
In non-stop mode, the client just replies
OK
to commands likevCont
, and then generates an async notification packet when there is some noteworthy inferior event.This means that the client would have to have some way to tell
process_packets_from
that an event like this occurred.The text was updated successfully, but these errors were encountered: