对多线程比较头疼,一直都不能很好的理解它。
请问如何才能更好的理解多线程(目标是能够在不同场景下灵活的使用多线程)?
麻烦给点意见或推荐一些文章、书籍,谢谢!
请问如何才能更好的理解多线程(目标是能够在不同场景下灵活的使用多线程)?
麻烦给点意见或推荐一些文章、书籍,谢谢!

1 plprapper Dec 6, 2012 熟练的使用异步线程==》多个异步线程==》线程池 看看服务器 数据库连接池这些东西的设计 源码神码的。 |
2 kuno Dec 6, 2012 我很怀疑这个世界上有多少人真正理解多线程. |
3 guoxx_ Dec 7, 2012 看看 <<现代操作系统>> 里面关于线程的描述吧 |
4 holsety Dec 7, 2012 如果这个问题,问在python节点,请自行google GIL,这是python被诟病的最大原因之一. |
5 mozillazg OP 谢谢各位的回复,感谢已发送。 |
6 BOYPT Dec 7, 2012 首先你需要理解“异步”这个概念。剩下不管是线程进程协程都是这个概念的实现而已。我推荐你先去接触Javascript,因为你现在直接按F12(你用chrome的话)就可以有一个练手的环境,Javascript的异步是随处可用随处可见的。 我当年就是先接触了js的,然后大学时候上操作系统说什么线程进程的异步执行我就觉得很自然很好理解啊,但是很多同学怎么讲都不明白,我觉得是因为这个概念问题。我以前读过《Javascript DOM编程艺术》这本小书,第一章就是以人类思维来讲解的“异步”,如果你暂时不打算深入看js,那找pdf看看第一章也行。 「OT」 某楼莫名其妙出现个GIL关键字,貌似有显摆的嫌疑…… |
7 holsety Dec 7, 2012 额,ok,不是显摆,请自行google,因为关于GIL的争论也很多,展开来说,可以说很多的. 简单来说,python使用了GIL,全局线程锁,即对于python来说,无论你用多少线程,实际上在某一时刻运行的也只有一个线程,而且用多线程还增加了线程切换的开销.所以python想要利用多核CPU的计算能力,仅仅考thread是不行的. |
9 mozillazg OP |
10 lts9165 Dec 7, 2012 哈哈,我记得有人调侃python,就是说,和写python的聊多线程~ |