https://medium.com/@murataslan1/orchestrating-threads-an-engineers-guide-to-channels-in-rust-e9eb4a089efa