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

Update internal ASF Celix event loop to use libuv #770

Open
3 tasks
pnoltes opened this issue Oct 6, 2024 · 0 comments
Open
3 tasks

Update internal ASF Celix event loop to use libuv #770

pnoltes opened this issue Oct 6, 2024 · 0 comments
Labels
component/framework Categorizes an issue or PR relevant to the framework. kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. kind/improvement Categorizes issue or PR as related to improvements.

Comments

@pnoltes
Copy link
Contributor

pnoltes commented Oct 6, 2024

Intro

This ticket focuses on the internal implementation changes related to Celix’s event loop and how libuv can be leveraged internally to simplify platform abstraction.

Ideally this can be done without breaking the public API.

Steps

  • Replace internal event Loop with libuv event loop

Modify the internal Celix event thread implementation to use libuv's event loop (uv_loop_t). This will abstract the current Linux-specific implementation and make it cross-platform.

  • Update the scheduled event implementation for libuv

Also update the scheduled event implementation to make use of libuv. Including usage of uv_timer_t if feasible.

  • Update the celix shutdown procedure for the updated uv_loop_t

If feasible simplify the celix shutdown procedure using libuv.

@pnoltes pnoltes added kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. component/framework Categorizes an issue or PR relevant to the framework. kind/improvement Categorizes issue or PR as related to improvements. labels Oct 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component/framework Categorizes an issue or PR relevant to the framework. kind/cleanup Categorizes issue or PR as related to cleaning up code, process, or technical debt. kind/improvement Categorizes issue or PR as related to improvements.
Projects
None yet
Development

No branches or pull requests

1 participant