eclipse-iceoryx / iceoryx2

Eclipse iceoryx2™ - true zero-copy inter-process-communication in pure Rust
https://iceoryx.io
Apache License 2.0
1.03k stars 40 forks source link

Introduce `socketpair` abstraction for process local events #508

Open elfenpiff opened 1 week ago

elfenpiff commented 1 week ago

Brief feature description

Since the WaitSet must support file descriptors, the event messaging pattern must be based on file descriptors. Currently, the process local variant uses non-process local unix datagram sockets which violate the process local contract.

This can be solved by creating an abstraction for socketpair() and implementing an event concept on them so that it can be used in process local services.

elfenpiff commented 1 week ago

See this for windows inspiration: https://github.com/sunfishcode/socketpair/blob/main/src/windows_async_std.rs