Almost any large scale application will have some sort of concurrency involved, but what is concurrency? And what are the problems that arise because of concurrent code? And how can we handle them? In this article, I will try to answer those question...

Markdown supported · ⌘↵ to post
Great article as usual. but I have to comments:
1- in go mutex example you have to send the mutex by example in order not to create new instance with each pass which will result in no real locking, more details here: eli. thegreenplace. net/2018/beware-of-copying-mutexes-in-go/
2- (I know this shouldn't be in the article since it is introduction :D) in redis example, the unlock function may result in a problem if one thread is stuck longer than the lock time and when back it deletes the lock, then it may have deleted another thread lock. a solution for this problem is described here: redis .io/commands/set/
Abdelaziz Sliem I think hashnode blocks links comments.
Mohanad Gadallah
backend
Nice article! It is very simple and packed with a lot of information. Thanks!