锁定老帖子 主题:java多线程性能浅析
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (1)
|
|
---|---|
作者 | 正文 |
发表时间:2010-12-22
iehyou 写道 神之小丑 写道 ch_space 写道 whaosoft 写道 郁闷啊 为什么我总是用不到 线程呢 是不是水平太低了
不是,是因为你的电脑只有一个核,用了也没啥作用,哈哈~ 什么叫“电脑只有一个核,用了也没啥作用”?!!! 天天围着业务转 同意,现在我也是搞业务越来越多了...哎... |
|
返回顶楼 | |
发表时间:2010-12-22
最后修改:2010-12-22
sunzixun 写道 嘿,哥们,我这样来说说,请指教
1.单核,无IO,网络等资源操作情况下 结果:多线程比单线程理论上要慢 ============================= 这个时候,如果你把你的任务T分成不相竞争的子任务分 成T1 T2 然后使用1:1 的LWP模型, 那么你分到的时间片比原来只有T 的要多.所以多线程可能更快 就像分布式里面的map -reduce 但是不同的OS ,不同的当时内核调度算法(系统其他任务,不同版本内核),结果可能都不同 2.单核,有IO,网络等资源操作情况下 结果:多线程比单线程理论上要快 =============================== 参考N10论文,你就知道为什么单线程的epoll比多线程的快.为什么jdk要用NIO 3.多核,无IO,网络等资源操作情况下 结果:不确定 =============================== 嘿,大家都不确定 4.多核,有IO,网络等资源操作情况下 结果:多线程比单线程理论上要快 =================================== 如果内核调度需要而把你放到SMP任务队列,那么和第2条一样结果 呵呵,首先哥们对线程的理解另我汗颜,有几个问题请教。 第1条,线程的启动调度耗费的资源和采用LWP模型后多获取点cpu处理时间那个合算点? 第2条,NIO需要一个守护线程来不停的扫描Selector,在单核的情况下确定比阻塞IO快吗? 第4条,SMP不熟能解释下吗?但是结论我就不赞同了,多核时多一个守护线程来扫描Selector,IO处理使用NIO,如果单线程还比多线程快,我就郁闷了。 |
|
返回顶楼 | |
发表时间:2010-12-22
是不是多线程和socket玩转的才是高手?
|
|
返回顶楼 | |
发表时间:2010-12-22
woshicaiqiang 写道 是不是多线程和socket玩转的才是高手?
不知道,因为我不是高手 |
|
返回顶楼 | |
发表时间:2010-12-22
最后修改:2010-12-22
chs1987 写道 kingjiang09 写道 神之小丑 写道 ch_space 写道 whaosoft 写道 郁闷啊 为什么我总是用不到 线程呢 是不是水平太低了
不是,是因为你的电脑只有一个核,用了也没啥作用,哈哈~ 什么叫“电脑只有一个核,用了也没啥作用”?!!! 和电脑多少个核没有太大的关系吧? 难道你的电脑只有一个核就只能开一个浏览器? 这么明显的玩笑话都要较真。。。 哪里看出我较真了?关我鸟事,我打酱油的。JE就你这样装C的多,问题不答,就爱装C. |
|
返回顶楼 | |
发表时间:2010-12-23
kingjiang09 写道 神之小丑 写道 ch_space 写道 whaosoft 写道 郁闷啊 为什么我总是用不到 线程呢 是不是水平太低了
不是,是因为你的电脑只有一个核,用了也没啥作用,哈哈~ 什么叫“电脑只有一个核,用了也没啥作用”?!!! 和电脑多少个核没有太大的关系吧? 难道你的电脑只有一个核就只能开一个浏览器? 不好意思,你能开多个浏览器是因为你是多进程操作系统系统。 |
|
返回顶楼 | |
发表时间:2010-12-23
即便是在单核的情况下,你的多线程(多进程)也可以与别的程序抢CPU等资源...
|
|
返回顶楼 | |
发表时间:2010-12-23
毕竟红尘 写道 即便是在单核的情况下,你的多线程(多进程)也可以与别的程序抢CPU等资源...
没错,环境复杂,影响因素众多,理论上分析和小概率事件不相矛盾,因为你的多线程也可能被别的程序抢cpu资源。 |
|
返回顶楼 | |
发表时间:2010-12-23
chs1987 写道 kingjiang09 写道 神之小丑 写道 ch_space 写道 whaosoft 写道 郁闷啊 为什么我总是用不到 线程呢 是不是水平太低了
不是,是因为你的电脑只有一个核,用了也没啥作用,哈哈~ 什么叫“电脑只有一个核,用了也没啥作用”?!!! 和电脑多少个核没有太大的关系吧? 难道你的电脑只有一个核就只能开一个浏览器? 这么明显的玩笑话都要较真。。。 程序员的通病 |
|
返回顶楼 | |
发表时间:2010-12-23
chenyongxin 写道 woshicaiqiang 写道 是不是多线程和socket玩转的才是高手?
不知道,因为我不是高手 书到用时方恨少啊。玩转的不一定是高手,不过,肯定的是,玩不转的肯定不是高手。我就玩不转。 |
|
返回顶楼 | |