• 忘掉天地
  • 仿佛也想不起自己
bingliaolongBingliaolong  2025-08-22 15:10 Aet 隐藏边栏 |   抢沙发  1 
文章评分 1 次,平均分 5.0

概述

  1. C++写的一个异步分析接口,会不断通过回调发送electron当前的分析数据
  2. 但是,在某个场景(js)需要调用这个接口,还需要调用后拿到最终的分析结果后再处理其他逻辑

节流实现

等待异步操作

  1. 函数返回
    1. 这里是用的Promise对操作进行了封装,只有调用resolve的时候才返回
  2. 异步
    1. 比如下面的ScanAll是一个异步操作,当整个操作完成后,将触发onEngineStop事件
    2. 所以这里在执行这个异步操作之前,先在onEngineStop这个事件上注册了一个回调函数onEngineStoped
    3. ScanAll完成工作后,最后会调用这个onEngineStoped,获取扫描的结果后,就可以通过resolve返回了

  1. 其他情况
    1. 比如下面的事件onAnalyzeProgress并不是发一次,而是每完成一定进度就会触发一次
    2. 通用用这种方式让它阻塞在这里,最后等到progress100的时候返回

声明:本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

bingliaolong
Bingliaolong 关注:0    粉丝:0
Everything will be better.

发表评论

表情 格式 链接 私密 签到
扫一扫二维码分享