-
Notifications
You must be signed in to change notification settings - Fork 6
Add threading to host-side Python comms server #165
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
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR adds multi-threading support to the Python communications server, enabling concurrent access from multiple layer clients. Previously, the server handled connections serially; now each client connection runs in its own worker thread.
Key Changes:
- Converted server from single-threaded to multi-threaded architecture with one thread per client connection
- Refactored socket handling to pass
sockdas parameter instead of instance variable - Added worker thread pool management with proper cleanup on shutdown
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| lglpy/comms/server.py | Implements threading per client connection, refactors socket handling methods to static methods with explicit socket parameters, adds worker thread management |
| lgl_android_install.py | Passes verbose flag to service constructors for consistent logging behavior |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This enables multiple layers to connect to the server and make use of host-side services.
1dbb4c3 to
531324d
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
Copilot reviewed 7 out of 7 changed files in this pull request and generated 6 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This PR makes the Python server than runs on the host, providing services to layers, multi-threaded with a single thread per connected client layer. This allows multiple layers to use host-side services concurrently.