dora icon indicating copy to clipboard operation
dora copied to clipboard

Report when shared memory region is mapped to allow faster cleanup

Open phil-opp opened this issue 1 year ago • 2 comments

The shared memory region can be safely removed by the sender once it's mapped in the receiver. The OS will just delete the file handle associated with the shared memory region, but keep the data alive until it has been unmapped from all address spaces.

By notifying the sender that a message has been mapped to the address space we enable faster cleanup on exit. The sender can safely close all of its shared memory regions once all of its sent messages are at least mapped. So it does not need to wait until all messages have been dropped anymore, which can take considerably longer, especially if the Python GC is involved.

This commit modifies the message format, so we need to bump the version of the dora-message crate to 0.5.0.

This PR leads to a quicker exit of the camera node of #625.

phil-opp avatar Oct 04 '24 11:10 phil-opp

Hi! I tried this PR but the camera example still hang on CTRL+C (the plot doesn't exit and I have to do dora destroy then dora up to exit everything). However it worked properly on v0.3.5-fix7

Hennzau avatar Oct 09 '24 08:10 Hennzau

This could actually be useful to merge

haixuanTao avatar Nov 07 '25 06:11 haixuanTao