Ali*_*lin 5 java parallel-processing multithreading
到目前为止,我的印象是同时启动的2个线程也是并行执行的(两者同时运行它们的代码),但我最近阅读了一些文档,我明白他们实际上已经轮流使用了执行他们的代码,因此第一个线程的代码片段没有与第二个线程的一段代码同时执行. 我的理解是否正确?
如果是,那么多线程如何比一个线程执行更快? 我问这个是因为唯一的区别是单个线程执行代码顺序,而多线程可以轮流执行,但仍然应该花费相同的时间,因为它没有什么并行完成
a)在多处理器机器上,线程实际上可以并行运行(每个CPU一个)
b)如果你的线程Thread.sleep()在等待IO等时调用,它会使资源可用于其他线程.因此,在处理外部资源时,多线程应用程序实际上比单线程应用程序更快
| 归档时间: |
|
| 查看次数: |
5378 次 |
| 最近记录: |