In my code I need spawn_blocking
because of this:
Maybe I should consider this to be an (ugly) implementation detail and go for variant 5. But in the particular case, it will be a private module, so I don't need to care for a clean/stable API.
Anyway, I believe that in Rust it's usualluy idiomatic to expose the question whether an Arc
is needed/consumed/created to the user of an API.