现计划使用Python做一款数据采集软件,要同时抓取16台同产品设备,每台设备大概40个点位,使用TCP通讯,现在开了一个线程做通讯,确保UI界面不卡,但是数据刷新比较慢,一台设备耗时2秒左右,16台设备数据刷新需要半分钟左右,请问这种情况怎么解决。
4条回答 默认 最新
- gangganghao2 2022-08-29 14:06关注
使用线程池的策略同时执行多个设备数据的抓取,代码如下:
from concurrent.futures import ThreadPoolExecutor, wait
with ThreadPoolExecutor() as exe:
#params:16台设备信息列表
wait([exe.submit(exe_task, param) for param in params])def exe_task(param):
#param:单个设备信息参数
#抓取设备上数据的方法本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 各位请问平行检验趋势图这样要怎么调整?说标准差差异太大了
- ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
- ¥15 wpf界面一直接收PLC给过来的信号,导致UI界面操作起来会卡顿
- ¥15 init i2c:2 freq:100000[MAIXPY]: find ov2640[MAIXPY]: find ov sensor是main文件哪里有问题吗
- ¥15 运动想象脑电信号数据集.vhdr
- ¥15 三因素重复测量数据R语句编写,不存在交互作用
- ¥15 微信会员卡等级和折扣规则
- ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
- ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
- ¥15 gdf格式的脑电数据如何处理matlab