基于连接感知的实时困倦分类图神经网络
疲劳驾驶是导致交通事故的主要原因之一。脑电图(EEG)是一种直接从大脑活动中检测睡意的方法,已广泛用于实时检测驾驶员的睡意。最近的研究表明,使用基于脑电图数据构建的大脑连接图来预测困倦状态的巨大潜力。然而,传统的脑连接网络与下游预测任务无关。本文提出了一种使用自注意机制的连接感知图神经网络(CAGNN),该网络可以通过端到端训练生成与任务相关的连接网络。
研究方法
研究方法基于实时监测驾驶员的脑电活动,以检测其是否处于疲劳状态。使用EEG作为检测手段,因为它能直接测量大脑活动,而且不会引起隐私问题,也不会受到面部遮挡和光照变化的影响。方法达到了72.6%的准确率,并且优于其他卷积神经网络(cnn)和基于困倦驾驶数据集的图生成方法。此外,引入了一个挤压和激励(SE)块来捕获重要特征,并证明SE注意评分可以揭示最重要的特征波段。比较了困倦状态和清醒状态下生成的连接图,发现困倦状态下的连接模式,包括枕部连接和区域间连接显著减少。
使用的模型分析
论文提出了一种名为Connectivity-Aware Graph Neural Network (CAGNN)的模型,该模型利用自注意力机制生成与任务相关的连接图,并通过端到端训练进行优化。
数据集和预处理
数据集来源:数据集收集于台湾国立交通大学的脑研究中心,收集自27名健康受试者(年龄范围:22至28岁)在驾驶模拟器中进行的62次记录,每次记录时间超过90分钟。
EEG记录:32通道EEG,包括一个接地电极和一个参考电极,采样率为500Hz。在任务过程中,随机诱导车道偏离事件使汽车向左或向右漂移。受试者被要求尽快做出反应,将车开回车道中央。在两个连续的试验之间,有一个随机的休息时间,从5到10秒不等,以防止参与者预期潜在的偏差。通过测量反应时间(RT)来评价驾驶员的表现。
- 预处理步骤:
- 使用1Hz和50Hz的有限脉冲响应(FIR)滤波器进行带通滤波。
- 使用EEGLAB的自动伪迹去除(AAR)插件去除伪迹,适合实时应用。
- 移除反应时间小于100ms的试验,以排除偶然的非响应。
- 下采样至128Hz,并提取刺激前5秒的样本。
符合条件的试验按以下程序选择:
1)两类样本均少于40个的试验被丢弃。
2)通过选择本地RT最短(警觉类)或最长(困倦类)的最具代表性的样本来平衡每个会话的样本[17]。
3)对于具有相同主题的多个会话,我们选择样本最多的会话。
从平衡数据集中的11个受试者中获得了1880个样本,从自然不平衡数据集中获得了2848个样本。获得了一个规模为1880个样本× 30个通道× 640个时间点的平衡数据集和一个规模为2848个样本× 30个通道× 640个时间点的不平衡数据集:
CAGNN模型结构
1.节点构建:每个EEG通道的数据被视为图中的一个节点。首先,将5秒的EEG样本分割成10个0.5秒的时间段,并通过快速傅里叶变换(FFT)将这些时间段转换到频域,保留与疲劳相关的特定频率带(delta, theta, alpha, beta)。
2.特征提取:使用FFT转换后的频率特征,仅保留正频率以消除冗余。
3.Squeeze-and-Excitation (SE) 块:
- Squeeze操作:通过全局池化操作聚合特征向量,减少通道和时间维度,生成一个特征表示。
- Excitation操作:使用全连接层和激活函数(ReLU和sigmoid)来学习特征的加权表示,这些权重用于调节输入特征的重要性。SE块在不同频率特征(上表)和包括delta、theta、alpha和beta波段(下表)的频带上的注意得分:
4.自注意力机制:利用SE块的输出来生成任务相关的连接图。自注意力机制通过学习输入特征向量之间的相关性来构建邻接矩阵,这个过程是端到端的,意味着它是在训练过程中自动优化的。
5.图神经网络(GNN)编码:
- 使用一个变体的扩散卷积循环神经网络(DCRNN),该网络使用扩散卷积门循环单元(DCGRU)来编码EEG数据的时空依赖性。
- DCGRU单元:代替了传统的门控循环单元(GRU)中的矩阵乘法操作,通过扩散卷积来更新节点特征。
6.图卷积:在DCRNN中,使用ChebNet谱图卷积来执行扩散卷积,这允许模型在图结构中传播节点特征,捕捉节点的局部和全局依赖性。
7.分类器:
- 通过最大池化层沿着节点维度聚合特征,然后使用两个全连接层(32×16和16×2)来输出两类的概率。
使用二元交叉熵损失函数来训练网络,Adam优化器进行模型训练,初始学习率为1e−3,并采用余弦退火权重衰减策略,所有模型训练30个epoch。
实验结果详细总结
性能分析
由于受试者数量较少,研究者采用了留一法交叉验证来评估模型性能。在每个训练周期中,一个受试者的数据被用作测试集,其余数据用于训练。所有实验重复五次,每次使用不同的随机种子,以确保结果的稳定性和可靠性。将CAGNN模型的性能与最先进的CNN模型进行了比较,包括EEGNet和ShallowConvNet,以及最近开发的一个名为InterpretableCNN的模型:
模型比较
CAGNN与其他几种先进的卷积神经网络(CNN)模型进行了比较,包括EEGNet、ShallowConvNet和InterpretableCNN。
InterpretableCNN最初只用于离线分析,但为了适应实时应用,研究者对其进行了重新实现,以便在评估模式下处理单个样本而非样本集合:
评估指标
- 准确率:CAGNN模型在平衡数据集上的平均准确率达到70.5%,比不包含SE块的模型高出约1%。
- F1分数:CAGNN在F1分数上也表现优异,这表明模型在精确度和召回率之间取得了良好的平衡。
- 精确度和召回率:这些指标用于进一步评估模型在二元分类任务中的表现,CAGNN在这些指标上同样优于比较模型。
注意力分数分析
-
SE块的注意力分数:研究者展示了SE块学习到的注意力分数,并发现theta频带的注意力分数最高:
-
特征频带重要性:基于SE注意力分数,研究者进一步训练了模型,仅使用theta频带特征,发现准确率提高了2%。
不同频带的性能
- theta频带:使用theta频带特征的CAGNN模型达到了72.6%的准确率和70.7%的F1分数。
- 其他频带:delta和alpha频带的特征也对模型性能有正面影响,而beta频带特征则表现不佳,这可能与beta特征在疲劳和警觉样本中共存有关。
不平衡数据集上的表现
CAGNN在不平衡数据集上的表现也进行了评估,尽管准确率略低于平衡数据集,但在F1分数、精确度和召回率等指标上仍然优于比较方法:
研究者比较了CAGNN生成的疲劳和警觉状态下的连接图,发现了枕部连接减少等特征。通过遮挡特定EEG片段并观察模型输出的变化,研究者能够识别模型预测中重要的EEG片段。
研究者分析了自注意力、GNN和GRU等模型组件对性能的影响,发现每个组件都对提高模型性能有贡献。SE块不仅提高了性能,还通过注意力分数揭示了信息特征,有助于特征选择。
结论
- 模型优势:CAGNN模型在实时疲劳驾驶分类任务中表现出色,无论是在平衡还是不平衡数据集上。
- 神经生理学解释:模型生成的连接图提供了有关疲劳状态下大脑连接变化的见解,例如枕部和顶叶连接的降低。
新的连接感知图神经网络(CAGNN),它同时具有连接感知和任务感知,用于平衡和不平衡数据集的实时困倦分类。引入SE块来突出最重要的特征,并通过端到端训练的自注意机制与我们的GNN模型生成图。此外,这种方法不仅提高了我们的模型的性能,而且还提供了有意义的神经生理学解释在困倦状态下的大脑连接,该方法可应用于驾驶员困倦实时监测系统中。
相关文章:
基于连接感知的实时困倦分类图神经网络
疲劳驾驶是导致交通事故的主要原因之一。脑电图(EEG)是一种直接从大脑活动中检测睡意的方法,已广泛用于实时检测驾驶员的睡意。最近的研究表明,使用基于脑电图数据构建的大脑连接图来预测困倦状态的巨大潜力。然而,传统的脑连接网络与下游预测…...
Set系列之HashSet源码分析:原理剖析与实战对比
引言:哈希集合的基石 1.1 集合框架的核心地位 数据存储的三大特性:唯一性、无序性、快速访问HashSet的市场占有率:Java集合框架中使用率TOP3(占日常开发场景的45%) 1.2 为什么需要深入理解HashSet? 隐藏…...
vscode vim插件操作查缺补漏
一.多光标编辑 在 VSCode 中使用 Vim 插件 (VSCodeVim) 实现多光标选择和同时编辑的常用方法: 1. 逐个添加匹配项 (推荐) 快捷键: CtrlD (Win/Linux) / CmdD (Mac)操作: 将光标放在想选中的单词上。重复按此快捷键,会依次选中下…...
Python 爬取微店商品列表接口(item_search)的实战指南
在电商数据分析、市场调研或竞品分析中,获取商品列表信息是常见的需求。微店作为知名的电商平台,提供了丰富的商品资源和相应的 API 接口。本文将详细介绍如何使用 Python 爬虫技术,通过微店的 item_search 接口根据关键词搜索商品列表&#…...
游戏性能测试
1. 分阶段,看目的,确定高中低三档测试机,最低档机的确定需要和客户端主程和制作人等共同确定 确定三档机的方式: 1. 要上线地区的top100,根据用户占比,划分出三档 2. 根据用研部门提供的数据,确…...
Webug4.0通关笔记06- 第8关CSV注入
目录 CSV注入漏洞 1.CSV漏洞简介 2.漏洞原理 (1)公式执行 (2)DDE机制 (3)OS命令执行 3.漏洞防御 第08关 CSV注入 1.打开靶场 2.修改源码 3.注入命令 4.导出excel表 5.打开excel表 CSV注入漏洞…...
最新DeepSeek-Prover-V2-671B模型 简介、下载、体验、微调、数据集:专为数学定理自动证明设计的超大垂直领域语言模型(在线体验地址)
DeepSeek-Prover-V2-671B模型 简介、下载、体验、微调、数据集:专为数学定理自动证明设计的超大垂直领域语言模型(在线体验地址) 体验地址:[Hugging Face 在线体验]https://huggingface.co/playground?modelIddeepseek-ai/DeepS…...
iView Admin的side menu改为top menu
和iView Admin结缘于某次在“顾问群”里问,“有什么开源前端框架推荐吗?”。群里一位老开发答,“试试iView Admin”。于是我就试了试,发现很好用,对新手也很友好,试过撸一个管理后台的前端用了4天ÿ…...
2025上海车展 | 移远通信推出自研NG-eCall QuecOpen方案,助力汽车安全新标准加速落地
4月29日,在2025上海国际汽车工业展览会期间,全球领先的物联网和车联网整体解决方案供应商移远通信宣布,正式发布自主研发的NG-eCall(下一代紧急呼叫系统)QuecOpen解决方案。 该方案凭借高度集成的软硬件协同设计&…...
使用gitea发布软件包
1、新建hello工程 (1)HelloApplication.java package cn.ac.trimps.sv;import org.springframework.boot.CommandLineRunner; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplicati…...
如何加速机器学习模型训练:深入探讨与实用技巧
在机器学习和深度学习的应用中,训练模型通常需要耗费大量时间。随着数据集的增大、模型复杂度的提升以及任务的多样化,训练速度变得越来越重要。无论是在学术研究中,还是在工业应用中,加速训练过程不仅能提高工作效率,…...
HBuider中Uniapp去除顶部导航栏-小程序、H5、APP适用
文件pages.json中改"globalStyle" "globalStyle": {"navigationBarTextStyle": "black","navigationBarBackgroundColor": "#F8F8F8","backgroundColor": "#F8F8F8","titleNView"…...
scGPT-spatial:持续预训练scGPT用于空间转录组
空间转录组学已成为一种关键技术,可在细胞的空间环境中对其基因表达进行分析。公开可用的空间数据的迅速增长,为我们进一步理解驱动细胞命运决定和疾病进展的微环境提供了契机。然而,现有的基础模型大多是在scRNA-seq数据上进行预训练的&…...
ERP管理系统对企业财务管理有什么重要意义
在知识经济浪潮的推动下,企业的核心资产正经历着从传统厂房设备向知识产权的历史性跨越。专利技术、品牌价值、人才储备等无形资产逐渐成为驱动企业发展的核心引擎,但这类资产的非实体性与价值波动性,却让传统财务管理工具陷入"看得见摸…...
【数据库原理及安全实验】实验五 数据库备份与恢复
指导书原文 数据库的备份与恢复SSMS 【实验目的】 1) 熟悉并掌握利用界面操作进行数据库备份和恢复的原理和操作。 【实验原理】 1) 数据库的恢复包括大容量日志恢复模式和简单恢复模式。其中大容量日志恢复模式,简单地说就是要对大容量操作进行最小日志记录&a…...
【人脸去遮挡前沿】三阶段级联引导学习如何突破真实场景遮挡难题?
一、现实痛点:当人脸被遮挡,AI “认脸” 有多难? 你是否遇到过这样的场景? 中考体育测试:2025 年天津泰达街中考考场要求考生 “脸部无遮挡” 才能通过人脸识别入场,戴口罩、帽子的学生需现场调整发型。智能门锁:奇景光电在 CES 2025 推出的 WiseEye 掌静脉模块,通过掌…...
Kettle下载安装教程
## 什么是Kettle Kettle(现在也称为Pentaho Data Integration,简称PDI)是一款开源的ETL(Extract-Transform-Load)工具,用于数据抽取、转换和加载。它允许用户通过图形化界面设计和执行数据集成流程…...
树的序列化 - 学习笔记
树的序列化可以有很多种类:可以变成 dfs 序,可以变成欧拉序,还有什么括号序的科技。 但是除了第一个以外其他的都没什么用(要么也可以被已有的算法给替代掉)。所以表面上是讲树的序列化,实际上还是讲的 df…...
数电发票整理:免费实用工具如何高效解析 XML 发票数据
如今数字电子发票越来越普及,但是数电发票的整理还是颇有讲究~ 今天给大家介绍一个 XML 发票阅读器。使用它完全不收取任何费用,且无广告干扰,对财务人员而言十分实用。 01 软件介绍 这款软件就是XML格式(数电票)阅读…...
ubuntu22.04 qemu arm64 环境搭建
目录 创建 安装 Qemu 启动 # 进入qemu虚拟机后执行 qemu编译器安装 创建 qemu-img create ubuntu22.04_arm64.img 40G 安装 qemu-system-aarch64 -m 4096 -cpu cortex-a57 -smp 4 -M virt -bios QEMU_EFI.fd -nographic -drive ifnone,fileubuntu-22.04.5-live-server-a…...
数据转储(go)
随着时间推移,数据库中的数据量不断累积,可能导致查询性能下降、存储压力增加等问题。数据转储作为一种有效的数据管理策略,能够将历史数据从生产数据库中转移到其他存储介质,从而减轻数据库负担,提高系统性能&…...
LeetCode167_两数之和 Ⅱ - 输入有序数组
LeetCode167_两数之和 Ⅱ - 输入有序数组 标签:#数组 #双指针 #二分查找Ⅰ. 题目Ⅱ. 示例 0. 个人方法官方题解一:二分查找官方题解二:双指针 标签:#数组 #双指针 #二分查找 Ⅰ. 题目 给你一个下标从 1 开始的整数数组 numbers …...
【AI平台】n8n入门5:创建MCP服务,及vscode调用MCP测试
前言 用n8n搭建一个MCP服务,然后用开发环境的MCP测试工具,测试调用一下。例子简单,只为了解原理。在开发环境,安装测试mcp服务的工具,vscode和Trae操作类似,而且在一个机器上的话,安装的插件公…...
第六部分:实战项目与拓展
欢迎来到 OpenCV 教程的第六部分!你已经走过了从像素操作到特征提取、再到基础目标检测的旅程。现在,我们将迎接更激动人心的挑战:将这些技术结合起来,构建更贴近实际应用的系统。 本部分将带领你从更高层面思考如何设计一个计算…...
SQL Server连接异常 证书链是由不受信任的颁发机构颁发的
使用SQL Server连接数据库时报错如下: 标题: 连接到服务器 ------------------------------ 无法连接到 DESKTOP-N2KOQ8J\SQLEXPRESS。 ------------------------------ 其他信息: A connection was successfully established with the server, but then an erro…...
WebGL图形编程实战【5】:层次构建 × Shader初始化深度剖析
层次结构模型 三维模型和现实中的人类或机器人不一样,它的部件并没有真正连接在一起。如果直接转动上臂,那么肘部以下的部分,包括前臂、手掌和手指,只会留在原地,这样手臂就断开了。 所以,当上臂绕肩关节转…...
126. 单词接龙 II
题目 按字典 wordList 完成从单词 beginWord 到单词 endWord 转化,一个表示此过程的 转换序列 是形式上像 beginWord -> s1 -> s2 -> ... -> sk 这样的单词序列,并满足: 每对相邻的单词之间仅有单个字母不同。转换过程中的每个…...
【LeetCode Hot100】二叉树篇
前言 本文用于整理LeetCode Hot100中题目解答,因题目比较简单且更多是为了面试快速写出正确思路,只做简单题意解读和一句话题解方便记忆。但代码会全部给出,方便大家整理代码思路。 94. 二叉树的中序遍历 一句话题意 返回二叉树中序遍历的数…...
MySQL基础关键_002_DQL
目 录 一、初始化 二、简单查询 1.部分语法规则 2.查询一个字段 (1)查询员工编号 (2)查询员工姓名 3.查询多个字段 (1)查询员工编号、姓名 (2)查询部门编号、名称、位置 …...
游戏引擎学习第249天:清理调试宏
欢迎大家,让我们直接进入调试代码的改进工作 接下来,我们来看一下上次停留的位置。如果我没记错的话,上一场直播的结尾我有提到一些我想做的事情,并且在代码中留下了一个待办事项。所以也许我们今天首先做的就是解决这个问题。但…...
TwinCAT数据类型,%MX,%MD这些特殊符号
在 TwinCAT(Beckhoff PLC 编程环境)中,%MX、%MD 等符号是 IEC 61131-3 标准的地址表示法,用于直接访问 PLC 的物理 I/O 或内存区域。这些符号通常用于 变量声明 或 直接寻址,特别是在 TwinCAT 2 和 传统 PLC 编程 中较…...
力扣——20有效的括号
目录 1.题目描述: 2.算法思路: 3.代码展示: 1.题目描述: 给定一个只包括 (,),{,},[,] 的字符串 s ,判断字符串是否有效。 有效字符串需满足: 左括号必须…...
正点原子STM32H743单片机实现ADC多通道检测
目标 使用STM32CubeMX工具,配置ADC相关参数,实现在STM32H743单片机上获取ADC多通道电压值。共14个ADC引脚,ADC2有5个,ADC3有9个,全部设置单通道 ADC引脚 PF3PF4PF5PF10PC0PC2PC3PH2PH3PA3PB0PB1PA4PA5PA6 STM32cube…...
前端封装WebSocket工具n
Web API 提供的 WebSocket 类,封装一个 Socket 类 // socket.js import modal from /plugins/modal const baseURL import.meta.env.VITE_APP_BASE_WS; const EventTypes [open, close, message, error, reconnect]; const DEFAULT_CHECK_TIME 55 * 1000; // 心…...
Docker进入MySQL之后如何用sql文件初始化数据
关闭Docker-compose.yml里面所有容器 docker compose -f docker_compose.yml down后台形式开启Docker-compose.yml所有容器 docker compose -f docker_compose.yml up -d罗列出所有启动过的(包括退出过的)容器 docker ps -a进入指定容器ID内部 docke…...
Docker搜索镜像报错
科学上网最方便。。。。 尝试一: 报错处理 Error response from daemon: Get https://index.docker.io/v1/search?qmysql&n25: dial tcp 31.13.84.2:443: i/o timeout 国内从 DockerHub 拉取镜像有时会遇到困难,此时可以配置镜像加速器。Docke…...
【Unity笔记】基于距离驱动的参数映射器 InverseDistanceMapper 设计与实现
需求: 当用户距离目标位置越近,参数值越大。 可用于控制场景亮度、动画进度、交互强度等多种效果。 一、需求背景:如何让“距离”成为设计的一部分? 在虚拟现实(VR)、增强现实(AR)乃…...
【Spring AI】Java结合ollama实现大模型调用
在较新的Java版本中,编译器已经支持了接入各种AI模型工具进行开发,这篇文章我会介绍如何利用Spring AI进行大模型的调用的基础方法。 环境准备 由于这篇文章是结合ollama进行演示,所以在开始前需要先安装ollama服务,这个的具体步…...
docker制作python大模型镜像(miniconda环境),工程改造记录
**环境说明:**从系统镜像开始打造python大模型镜像,之前是人工手动装的方式,并且模型和依赖在公网中,对于离线交付环境不太友好,所以打造的离线化交付版本 Dockerfile: FROM centos:7.9 ENV PYTHONIOENCODINGutf-8 E…...
在油气地震资料积分法偏移成像中,起伏地表处理
在油气地震资料积分法偏移成像中,起伏地表情况会带来波场传播路径畸变、静校正问题以及成像精度下降等挑战。以下是处理起伏地表的常用方法和技术要点: 1. 静校正预处理 高程静校正:将地表各接收点校正到统一基准面(浮动基准面或…...
经典算法 独立任务最优调度问题
独立任务最优调度问题 题目描述 用2 台处理机A 和B 处理n 个作业。设第i 个作业交给机器A 处理时需要时间ai ,若由机器B 来处理,则需要时间bi 。由于各作业的特点和机器的性能关系,很可能对于某些i,有ai >bi,而对…...
在TensorFlow中,`Dense`和`Activation`是深度学习模型构建里常用的层
在TensorFlow中,Dense和Activation是深度学习模型构建里常用的层,下面就详细解释它们的使用语法和含义。 1. Dense层 含义 Dense层也就是全连接层,这是神经网络里最基础的层。在全连接层中,每一个输入神经元都和输出神经元相连…...
基于 Rancher 部署 Kubernetes 集群的工程实践指南
一、现状分析 在当今的云计算和容器化领域,Kubernetes(K8S)已经成为了容器编排和管理的事实标准。根据 Gartner 的数据,超过 70% 的企业在生产环境中使用 K8S 来管理容器化应用。然而,K8S 的安装和管理对于许多企业来…...
Seaborn
1. Seaborn概述:Seaborn是基于Matplotlib的Python数据可视化库,专注绘制统计图形。它简化可视化流程,提供高级接口与美观默认主题,能以少量代码实现复杂图形绘制。 2. 安装与导入:安装Seaborn可使用 pip install seabo…...
0基础FWT详解2(巩固)
FWT巩固1 FWT巩固1卡常技巧巩固习题luogu6097CF662Cluogu4221FWT巩固1 在 上篇文章 中,我们学习了 F W T FWT FWT,本文将带读者一起做几道题,巩固对 F W T FWT FWT 的使用 卡常技巧 一个常数大的 F W T FWT FWT 是非常不利于做题的,所以我们需要卡常。 作者简单总结…...
阿里云 ECS 服务器进阶指南:存储扩展、成本优化与架构设计
一、弹性存储架构:块存储深度解析与挂载实践 (一)块存储类型与技术特性 阿里云块存储作为 ECS 核心存储方案,提供三种主流类型: ESSD 云盘 性能等级:PL0/PL1/PL2/PL3,最高支持 100 万 IOPS …...
运维打铁: 存储方案全解析
文章目录 一、引言二、思维导图三、常见存储方案介绍3.1 直接附加存储(DAS,Direct Attached Storage)1. 原理2. 优缺点3. 适用场景 3.2 网络附加存储(NAS,Network Attached Storage)1. 原理2. 优缺点3. 适用…...
Semtech公司简介以及主流产品
Semtech 公司是一家美国的半导体公司,总部位于加利福尼亚州卡马里洛。以下是其简介和主流产品介绍: 公司简介 成立时间与地点:1960 年成立于加利福尼亚州纽伯里帕克。发展历程:最初为军事和航空航天公司提供零部件,1…...
flutter 专题 五十六 Google 2020开发者大会Flutter专题
由于疫情的原因,今年的Google 开发者大会 (Google Developer Summit) 在线上举行,本次大会以“代码不止”为主题,全面介绍了产品更新以及一系列面向本地开发者的技术支持内容。我比较关注的是移动开发,在本次大会上,关…...
93. 后台线程与主线程更新UI Maui例子 C#例子
在.NET MAUI开发中,多线程是常见的需求,但UI更新必须在主线程上执行。今天,我们来探讨一个简单而优雅的解决方案:MainThread.InvokeOnMainThreadAsync。 一、背景 在跨平台应用开发中,后台线程常用于执行耗时操作&am…...