This PR makes all types Send, as well as some types (such as StreamFold) Sync as per some of the feedback in #71. Additionally, a few methods were modified to take &self instead of &mut self to satisfy compiler errors with aliasing as a result of some additional Mutexs.
One important note here is that all mutexes added are from std. In the future, this should be updated to use tokio::sync::Mutex, but current method signatures (non-async) currently prevent this.
This PR makes all types
Send
, as well as some types (such asStreamFold
)Sync
as per some of the feedback in #71. Additionally, a few methods were modified to take&self
instead of&mut self
to satisfy compiler errors with aliasing as a result of some additionalMutex
s.One important note here is that all mutexes added are from
std
. In the future, this should be updated to usetokio::sync::Mutex
, but current method signatures (non-async) currently prevent this.