多线程我一知半解比较捆饶的是:什么情况下要用,而且用了后效果很突出。
什么情况下可用可不用,用了后效果不是很明显。比如:一个串口程序
串口下连接了20台机器,软件进行数据收集与翻译。
(我都是顺序完成的:100毫秒收集1号机器数据,收集后翻译并在软件上呈现相应图形,然后过100毫秒收集2号机器数据,以此类推)请问,我有必要使用多线程吗?
什么情况下可用可不用,用了后效果不是很明显。比如:一个串口程序
串口下连接了20台机器,软件进行数据收集与翻译。
(我都是顺序完成的:100毫秒收集1号机器数据,收集后翻译并在软件上呈现相应图形,然后过100毫秒收集2号机器数据,以此类推)请问,我有必要使用多线程吗?
是否适合用多线程,就要睇一下你的任务是否可以并行操作,并且操作之间有没有影响。就像楼主的程序,用多个线程去读取相关资料,然后再显示出来是可以的。
但是楼主要搞清楚一点的是多线程操作要睇一下你的CPU是否为多核,是否支持多线程操作,如果唔是,那么就没有发挥出多线程的优势,如果你的CPU是单核的,反而会降低效率,因为CPU是分时操作的,你多个线程,都只不过是在不同时间段内工作,并没有并行操作,你的程序珲要管理多个线程之间的状态。