选择线程还是不用线程 什么情况上使用多线程
选择线程还是不用线程 什么情况下使用多线程
线程不会给所有问题最好的解决方案.线程并非总是容易使用,而并非总是可以达到更好的性能.
一些问题本身就是非并发的.添加线程只能降低程序的性能并使程序复杂.如果程序中的每一步都需要上一步的结果.则使用线程不会有任何帮助.每个线程不得不等待其他线程的结束.
最适合使用线程的是实现以下功能的应用:
1.计算密集性应用,为了能在多处理器系统上运行.将这些计算分解到多个线程中实现.
2.I/O密集型应用.为提高性能,将I/O操作重叠.很多线程可以同时等待不同的I/O操作.分布式服务器应用就是很好的例子,它们必须响应多个客户的请求,必须通过慢速的网络连接主动提供I/O的准备.
大部分程序有一些本质上的并发,即使那种在处理命令的同时从输入设备中读取下一个命令的简单并发.多线程程序通常比串行程序更快,响应性能更好,它们比实现同样功能的非线程异步程序更易于开发好维护.