我感觉很多项目使用java或者c的多线程库+线程安全的queue数据结构基本上可以实现goroutine+channel开发能达到的需求,所以请问一下为什么说golang更适合并发服务端的开发呢?使用goroutine+channel和java多线程+queue队列的方式开发各有什么优缺点?
http://tleyden.github.io/blog...
goroutine比thread开销更小,而且更加简单
线程需要抢锁,会浪费cpu性能,并行变为串行,而gorouten是以通知发送数据给单独线程做一个副本,然后其他线程不用竞争锁的方式去真正并行执行
http://tleyden.github.io/blog...
goroutine比thread开销更小,而且更加简单
线程需要抢锁,会浪费cpu性能,并行变为串行,而gorouten是以通知发送数据给单独线程做一个副本,然后其他线程不用竞争锁的方式去真正并行执行