DataDog / glommio

Glommio is a thread-per-core crate that makes writing highly parallel asynchronous applications in a thread-per-core architecture easier for rustaceans.
Other
2.93k stars 161 forks source link

Force `tid` wrapper to move #666

Open yokomizor opened 1 month ago

yokomizor commented 1 month ago

What does this PR do?

This patch is related to 517326b, which wraps tid into a SendWrapper, because on musl, tid carries a raw pointer, making the type !Send.

I tried to build the current master on musl using rust 1.78, and what I see is that the wrapper gets destructed into its inner value before the move happens, causing the build to fail. I am not sure if this issue is related to rust version or if the original patch never worked.

I also removed the call to enclose!. It was wastefully cloning 2 arcs that can be moved instead.

Motivation

Fix the compilation on musl.

Related issues

517326b

Additional Notes

It would be nice to add musl into ci <3

Checklist

[] I have added unit tests to the code I am submitting [] My unit tests cover both failure and success scenarios [] If applicable, I have discussed my architecture