I have noticed performance problems with RwLock in the longer run.
After debating, I'm going to switch to Crossbeam Channel, as this does block (aka, "lock") the variable through a bounded channel, so that each variable being maintained by a rwlock, have their own channel without interfering with each other.
This is a huge rewrite of the implementation, and will take some work and testing.
Changed my mind after going through my code.
Did some heavy optimizations, closing down this issue, as it's been addressed in a optimization refactor.
See: 307423d75b605982f5b339df305537a51f76e75e
I have noticed performance problems with RwLock in the longer run. After debating, I'm going to switch to Crossbeam Channel, as this does block (aka, "lock") the variable through a bounded channel, so that each variable being maintained by a rwlock, have their own channel without interfering with each other. This is a huge rewrite of the implementation, and will take some work and testing.