This PR continues on the work of #730. Profiling helped identify multiple causes of performance issue, including our refcount implementation with weak pointers.
More static inline rework:
Similar work to what was done previously.
Lazier & faster clear / initialization:
Some types were taking time initializing or clearing things that weren't necessary. They got simplified.
Chief of this was timestamps. A validity boolean flag was added to the struct to simplify checks & clears of the type.
"Simple rc" - name subject to change:
Added back a rc implementation without weak, used only for arc_slices. Closes #520
Add Z_FEATURE_PUBLISHER_SESSION_CHECK config token
On by default, this can be turned off to avoid upgrading the publisher's session weak in apps where session is not dropped before it stops publishing.
Reworked logs from the transport/codec layer.
Multicast read task more tolerant:
As pico multicast is on a best-effort transport only, a missed fragment shouldn't close the connection (it was causing tests to halt).
This PR continues on the work of #730. Profiling helped identify multiple causes of performance issue, including our refcount implementation with weak pointers.
More static inline rework: Similar work to what was done previously.
Lazier & faster clear / initialization: Some types were taking time initializing or clearing things that weren't necessary. They got simplified. Chief of this was timestamps. A validity boolean flag was added to the struct to simplify checks & clears of the type.
"Simple rc" - name subject to change: Added back a rc implementation without weak, used only for arc_slices. Closes #520
Add
Z_FEATURE_PUBLISHER_SESSION_CHECK
config token On by default, this can be turned off to avoid upgrading the publisher's session weak in apps where session is not dropped before it stops publishing.Reworked logs from the transport/codec layer.
Multicast read task more tolerant: As pico multicast is on a
best-effort
transport only, a missed fragment shouldn't close the connection (it was causing tests to halt).