Комментарии:
I think that example "The Done Channel" is not correct. Instead of call close(done) it should be done <- true/false. If you add log in the case done <- you will see that the statement is not invoke. But with that call done <- true/false it is.
func doWork(done <- chan bool) {
for {
select {
case <-done:
fmt.Println("work done")
case default:
fmt.Println("doing work")
}
}
}
func main() {
done := make(chan bool)
go doWork(done)
time.Sleep(time.Sleep * 3)
done <- true
}
Despite this, your channel is great and very educational. You can explain complex concepts very well and clear. Great Tutorials !!! Keep up with the great work.
Nice video, by the way what theme do you use?
Ответить@Kantan, I'm definitely not regretting subscribing to this channel. I'm learning go and so far you have been a huge help for me to understand complex go concepts. Thank you sir :)
ОтветитьI'm glad I came across this tutorial.
ОтветитьPlease remove the annoying continuous background noise in the video if you can, I was having a hard time ignoring that.
ОтветитьLearned Go in 2017.
Never understood them until now.
Thank you!
the suspense music is so spot on aha Great tutorial, fab
ОтветитьLove your video! But what is that background sound? It gets really annoying! I think it would be easier to follow without it.
ОтветитьExcellent explaination. Thanks sir🎉
ОтветитьAn awesome tutorial!
p.s. Please avoid this phone ring like jingle as background music 😊
This was fantastic and well explained. I now have a way better understanding of how channels and select statements work within Go. Great job.
Ответитьwhat kind of use cases do these patterns have?
ОтветитьExcellent content except for the extremely distracting background noise/music.
ОтветитьNext part with mutexes and wait groups I presume
Ответитьbackground voice is very discractive. it's terrible in a good tutorial.
ОтветитьYour first example with three independent goroutines that print a string would be a good case for using sync.Waitgroup to make sure they all complete before exiting main.
ОтветитьThe background music is annoying.
Ответитьthis is good
Ответитьthe use of buffered channel didn't really felt like go concurrency. What if I run bunch of go routines and need to read all the data later in the main function? will it be concurrent or single threaded?
Ответитьone of the best video. you explain stuff very well
ОтветитьThanks for making this.
ОтветитьOne of the beat very helpful ❤
ОтветитьWhat font are you using?
ОтветитьSoothing sound along soothing Explanation, just perfect.
ОтветитьAs a newcomer to the world of Golang and goroutines, I loved every second of this video!
ОтветитьVery cool demonstration.
I'm just starting at Go but this is not my first language (I've been a backend developer for 12+ years).
This language is getting more interesting at each new video I watch, this is exiting ^^
Thanks
ОтветитьThank you so much for your video 🙏🏻🌹
ОтветитьWhich Theme? I like it
ОтветитьLiked and subscribed i dont think ill regret it !
ОтветитьI GET IT NOW! thanks lol
ОтветитьFor a buffered channel, does the receiver get blocked until a message comes?
ОтветитьWhat's the background tune that was playing? Is there a library of them? I thought it made the video more interesting.
ОтветитьThis explanation are really good, explained systematically from bottom to top, i came from frontend dev who dont know nothing about conccurent programming, even though i watch ZTM Golang i still cannot fully grasp the idea behind this Pattern.
Love from indonesian bro, already liked videos also subscribed and shared!!
Great stuff, thank you for sharing.
Ответитьwhat font is this?
ОтветитьReally like the music at the end of intro, now I'm ready to destroy those goroutines 🔥
ОтветитьSo good
ОтветитьExtremely clear explanation on concurrency . Keep up the good work.
ОтветитьFrom now on, you've got one more subscriber. Great content. I can't wait for some more advanced topics like, dependency injection, dynamic typing (interface{}) etc. As a php programmer recently I rewrote one of my microservices, and I was amazed by ease of doing it just with go. Apart of painfully precise data types declaration, and luck of many useful generic functions present in php core, I had almost ecstatic pleasure. Most of the time I do hard core backend staff with data transfer and after speed comparison I fell in love with go 🙂
ОтветитьThanks kantan, coincidentally yours video help me to solve Producer-consumer problem.
ОтветитьA lightsaber cursor?! LOL, oh, that's cool!
Ответитьis it only me who think that golang is easy to learn but hard to master ?
ОтветитьGreat tutorial ..
ОтветитьEverything is very good but what is the background noise throughout the video. It's very annoying.
Ответитьyou are amazing teacher, the best !!
ОтветитьGood. But verbose
Ответить