当前位置: 首页 > news >正文

OpenManus与OWL部署及体验报告

OpenManus与OWL对任务的执行结果均不及Manus;二者比较,Owl达成率更高;二者使用过程中均会消耗大量tokens,单个问题成本高。

一、部署

OpenManus:https://github.com/mannaandpoem/OpenManus.git
OWL:https://github.com/camel-ai/owl.git
两者git上的文档均流程完整,我是基于conda环境
核心配置文件.env (以下key均为假)

#===========================================
# MODEL & API 
# (See https://docs.camel-ai.org/key_modules/models.html#)
#===========================================
# OPENAI API (https://platform.openai.com/api-keys)
OPENAI_API_KEY="sk-xxxxxxxxxxx"
OPENAI_API_BASE_URL="https://api.openai-proxy.org/v1"# DeepSeek API (https://platform.deepseek.com/api_keys)
DEEPSEEK_API_KEY="sk-xxxxxxxxx"#===========================================
# Tools & Services API
#===========================================# Google Search API (https://coda.io/@jon-dallas/google-image-search-pack-example/search-engine-id-and-google-api-key-3)
GOOGLE_API_KEY="b0d65xxxxxxxxxxx"
SEARCH_ENGINE_ID="xxxxx"# Chunkr API (https://chunkr.ai/)
CHUNKR_API_KEY="ch_xxxxxxxxxxxxxx"# Firecrawl API (https://www.firecrawl.dev/)
FIRECRAWL_API_KEY="fc-xxxxxxxxxxxxxxxxxxxxxx"
#FIRECRAWL_API_URL="https://api.firecrawl.dev"

二、功能对比

在这里插入图片描述

这里着重想说一下两个模型关于使用deepseekV3-tools版本的表现:

  • Token用量:两个程序对于该模型的token用量是比较“恐怖”的,针对“请整理桂林旅游15天详细攻略和时间表及预算表,并导出计划存储到本地”这个问题
    — OpenManus消耗了120万token, 且未能成功输出文件,只给出了json字符串;
    — Owl消耗了6万token,成功输出文件。
  • 内容达成度:openManus与Owl内容因为都是经过多轮思考,因注意力和幻觉问题,均不及deepseekV3-search的单次问答。
  • 代码能力:问题“输出一个名为test的python文件,功能为打印hello word”
    —OpenManus成功输出,但因强制至少20轮思考,消耗10.5万token
    —Owl成功输出,消耗2.1万token
  • 与推荐模型gpt-4o对比
    —OpenManus:均会消耗大量token(>10万), 但达成率高于使用deepseek。
    —Owl:消耗token数量相当, 但达成率高于使用deepseek。

三、问题分析与对比

  1. Token消耗差异原因的研究
  • OpenManus的高消耗机制‌
    强制多轮思考设计(如20轮基线)导致冗余迭代。例如在打印"hello world"任务中,模型反复验证代码可行性,甚至模拟虚拟执行环境,产生大量中间过程数据。工具调用与结果解析的循环逻辑(如JSON解析失败自动重试)进一步加剧消耗。
  • O‌wl的优化策略‌
    采用动态思考轮次控制,任务分解后设置优先级阈值。当检测到关键步骤完成(如文件创建成功)时提前终止冗余流程。其工具链内置结果缓存机制(如Web搜索结果复用),减少重复调用。
  1. 任务达成率及过程观察的猜想
  • 工具链完整性差异‌
    Owl集成的多模态工具支持文件系统直写功能,而OpenManus依赖第三方库的间接调用,在模型指令对齐不足时易出现错误(这步经常出现在过程中)。
  • 幻觉‌
    两者均存在注意力问题,但Owl过程中会检验(通过日志)实测减少了部分过程中的幻觉。OpenManus当前版本对复杂任务易产生错误累积。
  • 图片识别模型的选择
    使用多模态非蒸馏模型时达成率更高,但是一旦使用llava的7B或者13B时会出现多轮次的错误网站的打开(如搜索桂林电子科技大学会打开桂林理工的官网,即对网页图片 文字识别不准确或幻觉)
  1. 工程化设计对比
  • 错误处理机制‌
    —Owl的错误熔断设计显著:当单轮token消耗超过预设值(默认5000,但是ollama情况下为9.99万)时强制中断,避免"死循环";
    —OpenManus未设置硬性拦截,正如上边120万token的消耗,经观察是陷入循环(打开携程—查询七星公园—搜索门票—跳转回七星公园页面往复很多次),这之后因为上下文过大出现了模型端服务启报错,经过一轮20次报错后跳出问题。
  • 扩展性差异‌
    OpenManus的模块化架构更优,支持自定义工具注册(通过@tool_decorator);Owl当前工具链为硬编码模式,需修改核心类才能扩展新功能(但原项目基于CAMEL, 自带工具相对完整)。
  • 结合本地部署模型的差异
    Owl与Open Menus均难以达成任务(基于Ollama格式)。使用模型qwen2.5:7b-instruct和llava:latest,经过调用日志和对话记录发现qwen2.5:7b-instruct的工具调用与Owl的预期不符,后续使用deepseekV3-tools测试发现虽过程优于qwen2.5b-instruct但结果依然不理想,均会有概率出现调用工具指令错误。

四、总结

正如开头所说,无论是相对优秀的Owl还是Open Manus两者均无法达到Manus的效果,但对于学习智能体和工具调用皆有启发;

对于学习研究:

  • 一次很好的python学习;也是一次很好的对工具的学习如UV和Conda;
  • 接触到CAMEL;
  • 最重要的是学习到有关于支持工具调用的模型,如:deepseek-V3-tools、qwen2.5-instruct、ChatGPT-4o,切深的体会到了不同语言模型在工具调度上差异。

相关的启发:

  • 当前正火的【智能体】大多都是基于支持工具调用的模型或者推理模的微调,提前喂给模型对应的工具调用方法,检测到ai返回字符串中方法名称时调用对应方法取得返回值后再发送给模型,open manus和owl也是如此(主要是对文件的调用和浏览器调用和图片分析)。那么可否使用其他同样灵活的语言(如nodeJS)来开发相关的智能体?
  • 通过微调和限制最大tokens是否能提升模型的专注力和结果的准确性?
  • 基于浏览器查询是一个使用工具的过程,其消耗的资源还是比较大的,那么对于目前无法联网的推理模型是否可通过微调,提升其使用工具的能力?同时对于联网搜索是否可通过如searXNG这类本地搜索引擎使其能结合互联网搜索结果给出更准确的回复?

关于非标准模型的网站或ollama的部署
参考我这个Ollama的配置 路径examples\run_ollama.py
直接上截图
在这里插入图片描述

相关文章:

OpenManus与OWL部署及体验报告

OpenManus与OWL对任务的执行结果均不及Manus;二者比较,Owl达成率更高;二者使用过程中均会消耗大量tokens,单个问题成本高。 一、部署 OpenManus:https://github.com/mannaandpoem/OpenManus.git OWL:https…...

【Pandas】pandas DataFrame pow

Pandas2.2 DataFrame Binary operator functions 方法描述DataFrame.add(other)用于执行 DataFrame 与另一个对象(如 DataFrame、Series 或标量)的逐元素加法操作DataFrame.add(other[, axis, level, fill_value])用于执行 DataFrame 与另一个对象&…...

Red:1靶场环境部署及其渗透测试笔记(Vulnhub )

环境介绍: 靶机下载: https://download.vulnhub.com/red/Red.ova 本次实验的环境需要用到VirtualBox(桥接网卡),VMware(桥接网卡)两台虚拟机(网段都在192.168.152.0/24&#xff0…...

【多源01BFS】Codeforce:Three States

题干 翻译 给定一个 nm 的网格地图,包含以下元素: .:表示荒地(可以修建道路)。 #:表示岩石(不可通行)。 数字 1、2、3:分别表示三个国家的位置。 目标:将…...

在深度学习中FLOPs和GFLOPs的含义及区别

在深度学习中,FLOPs和GFLOPs是衡量计算性能的关键指标,但两者的定义和应用场景不同: 1. 定义与区别 • FLOPs(Floating-point Operations) 表示模型或算法执行时所需的浮点运算总次数,用于衡量模型的计算复…...

SpringBoot入门实战(项目搭建、配置、功能接口实现等一篇通关)

🤟致敬读者 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉 📘博主相关 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息 文章目录 SpringBoot入门实战(项目搭建、配…...

昆仑万维开源SkyReels-V2,解锁无限时长电影级创作,总分83.9%登顶V-Bench榜单

昆仑万维开源了全球首个基于扩散强迫框架(Diffusion-forcing)的无限时长视频生成模型——SkyReels-V2。这一模型以总分83.9%的优异成绩登顶权威评测V-Bench1.0榜单,并在质量维度获得84.7%的评分,刷新了开源视频生成技术的天花板。…...

精选面试题

1、js中set和map的作用和区别? 在 JavaScript 中,Set 和 Map 是两种非常重要的集合类型 1、Set 是一种集合数据结构,用于存储唯一值。它类似于数组,但成员的值都是唯一的,没有重复的值。Set 中的值只能是唯一的,任何…...

【技术派后端篇】技术派中 Session/Cookie 与 JWT 身份验证技术的应用及实现解析

在现代Web应用开发中,身份验证是保障系统安全的重要环节。技术派在身份验证领域采用了多种技术方案,其中Session/Cookie和JWT(JSON Web Token)是两种常用的实现方式。本文将详细介绍这两种身份验证技术在技术派中的应用及具体实现…...

【CAPL实战:以太网】对IPv4报文的Payload部分进行分片并创建分片包

As we know,TCP/IP协议栈网络层接收到来自上层的数据时,并不是简单地添加报头发送出去,而是会受到来自网卡配置参数MTU的约束。也就是从网卡上发送出去的以太网帧报文的数据部分的长度不能大于MTU值。即网络层头部 + 有效载荷不能大于MTU。 所以网络层在发送上层的数据时,…...

Spring Security认证流程

认证是Spring Security的核心功能之一,Spring Security所提供的认证可以更好地保护系统的隐私数据与资源,只有当用户的身份合法后方可访问该系统的资源。Spring Security提供了默认的认证相关配置,开发者也可以根据自己实际的环境进行自定义身…...

Spring Security基础入门

本入门案例主要演示Spring Security在Spring Boot中的安全管理效果。为了更好地使用Spring Boot整合实现Spring Security安全管理功能,体现案例中Authentication(认证)和Authorization(授权)功能的实现,本案…...

Axure疑难杂症:母版菜单设置打开链接后菜单选中效果

亲爱的小伙伴,在您浏览之前,烦请关注一下,在此深表感谢! Axure产品经理精品视频课已登录CSDN可点击学习https://edu.csdn.net/course/detail/40420 课程主题:菜单打开链接后子菜单选中效果 主要内容:母版设计、选中效果 应用场景:页面赋值 案例展示: 案例视频:...

4月份最新---Meta发明了一种很新的Transformer

在自然语言处理领域,当模型处理长上下文时,如何在纷繁的 Token 中精准捕捉关键信息、过滤无关干扰,始终是注意力机制优化的核心方向。标准多头注意力(Multi-Head Attention, MHA)通过查询 - 键 - 值(Q-K-V)的点积相似性计算注意力权重,虽能定位单个 Token 级别的语义关…...

Spring Boot知识点详解

打包部署 <!‐‐ 这个插件&#xff0c;可以将应用打包成一个可执行的jar包&#xff1b;‐‐> <build><plugins> <plugin> <groupId>org.springframework.boot</groupId><artifactId>spring‐boot‐maven‐plugin</artifactId&g…...

基于 EFISH-SBC-RK3588 的无人机多光谱/红外热成像边缘计算方案

一、硬件架构设计‌ ‌核心算力平台&#xff08;EFISH-SBC-RK3588&#xff09;‌ ‌处理器性能‌&#xff1a;搭载 8 核 ARM 架构&#xff08;4Cortex-A762.4GHz 4Cortex-A551.8GHz&#xff09;&#xff0c;集成 6 TOPS NPU 与 Mali-G610 GPU&#xff0c;支持多光谱图像实时融…...

字典与集合——测试界的黑话宝典与BUG追捕术

主题&#xff1a;“字典是测试工程师的暗号手册&#xff0c;集合是BUG的照妖镜” 一、今日目标 ✅ 掌握字典的「键值对暗号体系」与集合的「去重妖法」✅ 开发《测试工程师黑话词典》&#xff0c;让新人秒变老司机✅ 统计自动化测试结果中的高频BUG类型&#xff08;附赠甩锅指…...

QT构建即时通讯应用--WebSocket全面解析与实战指南

概述 WebSocket协议因其低延迟和双向通信的能力而成为了现代Web和桌面应用程序的首选,Qt框架提供了强大的WebSocket支持,使得开发者可以轻松地集成这一技术到自己的项目中 WebSocket简介 WebSocket是一种在单个TCP连接上进行全双工通信的协议。它允许服务器主动向客户端推…...

复杂性决策-思维训练

思维训练 1.模式识别 观察、复杂、不确定、波动、模糊 –找出必要和非必要因素 –识别重大威胁和机遇 2.系统分析 为复杂情景构建系统心智模型 利用模型识别模式做出预测&#xff0c;指定有效策略 3.心智敏锐度 利用不同层次的分析探索挑战的能力&#xff0c;对其他利益相关方在…...

缓存集群技术深度解析:从原理到实战

缓存集群技术深度解析&#xff1a;从原理到实战 一、缓存集群核心定位与架构选型 1. 集群模式核心价值 缓存集群通过数据分片、高可用保障、水平扩展解决单节点瓶颈&#xff0c;核心能力包括&#xff1a; 数据分片&#xff1a;将数据分散到多个节点&#xff0c;突破单节点内…...

Qt C++/Go/Python 面试题(持续更新)

目录 1、封装、继承、多态是什么&#xff1f; 2、final标识符的作用是什么&#xff1f; 3、介绍一下虚函数 4、介绍一下智能指针 5、介绍一下左值、右值、左值引用、右值引用 6、指针和引用有什么区别&#xff1f; 7、define和const的区别是什么&#xff1f; 8、C程序的…...

Spring Cloud Alibaba VS Spring Cloud

​​Spring Cloud Alibaba 与 Spring Cloud 组件对比​ ​​服务发现与注册中心​ 功能​​​Spring Cloud​​​Spring Cloud Alibaba​对比说明​​核心组件​EurekaNacosNacos 支持动态配置管理、健康检查更灵活&#xff0c;且提供 DNS 服务发现能力。​​​​健康检查​​…...

containerd 配置代理

1.systemd unit file 为 containerd 服务创建一个 systemd 插入目录 mkdir /etc/systemd/system/containerd.service.d/创建名为 /etc/systemd/system/containerd.service.d/http-proxy.conf 的文件 添加 HTTP_PROXY 环境变量 [Service] Environment"HTTP_PROXYhttp:/…...

专家系统的基本概念解析——基于《人工智能原理与方法》的深度拓展

一、什么是专家系统 &#xff08;一&#xff09;基本思想与定义 1. 核心思想&#xff1a;知识与推理的分离 迄今为止&#xff0c;关于专家系统还没有一个公认的严格定义&#xff0c;一般认为&#xff1a; &#xff08;1&#xff09;它是一个智能程序系统&#xff1b; &…...

什么是公链?公链项目有哪些?公链项目开发

公链技术全景解析&#xff1a;定义、生态与开发指南&#xff08;2025年深度版&#xff09; 一、公链的本质与核心特征 1.1 公链的定义 公链&#xff08;Public Blockchain&#xff09;是一种完全开放、无需许可的区块链网络架构&#xff0c;其核心特征在于去中心化、透明…...

如何解析商品详情页面

解析商品详情页面是爬虫开发中的一个重要环节。由于商品详情页面通常包含丰富的信息&#xff0c;如商品名称、价格、描述、图片等&#xff0c;因此需要仔细分析页面结构并提取所需数据。以下是一个详细的步骤指南&#xff0c;展示如何使用 Java 和 Jsoup 解析商品详情页面。 一…...

Android 混合开发实战:统一 View 与 Compose 的浅色/深色主题方案

整个应用&#xff08;包括 View 和 Compose 部分&#xff09;的浅色/深色模式保持一致。以下是完整的解决方案&#xff1a; 全局配置方案 1. 基础主题设置 在 res/values/themes.xml 和 res/values-night/themes.xml 中定义统一的主题&#xff1a; <!-- values/themes.x…...

三国杀专业分析面板,立志成为桌游界的stockfish

三国杀专业分析面板 (SGSFish) GitHub仓库&#xff1a; 本项目是一个基于 Python 实现的三国杀专业分析面板&#xff0c;旨在模拟玩家决策过程&#xff0c;通过量化评估动作实体&#xff08;卡牌/技能&#xff09;的价值、考虑它们之间的相互影响&#xff08;包括基于作用域的…...

解析 select 函数

解析 select 函数 select 函数是 Unix/Linux 系统中用于多路复用的系统调用&#xff0c;主要用于在多个文件描述符&#xff08;file descriptors&#xff09;上等待事件的发生。它允许程序同时监视多个 I/O 通道&#xff0c;并在任意一个通道准备好进行 I/O 操作时通知程序&am…...

对话模型和补全模型区别

对话模型和补全模型区别 什么是对话模型、补全模型 什么是 Completion 最基本地说,文本模型是一个经过训练的大型数学模型,旨在完成一项单一任务:预测下一个 token 或字符。这个过程被称为 completion,在您的旅程中您会经常遇到这个术语。 例如,当使用 completion 文本…...

计算机图形学实践:结合Qt和OpenGL实现绘制彩色三角形

以下是使用Qt和OpenGL实现绘制彩色三角形并添加颜色选择按钮的步骤&#xff1a; 一、创建OpenGL绘制组件 继承QOpenGLWidget实现自定义绘制类&#xff1a; // myopenglwidget.h #include <QOpenGLWidget> #include <QOpenGLFunctions_3_3_Core> #include <QO…...

十分钟应急响应——自定义工具链整合实战

核心思路 结合群联AI云防护的API和自定义脚本&#xff0c;实现攻击检测、节点切换、日志分析的端到端自动化。 技术实现步骤 1. 实时攻击检测脚本 使用Python监听群联系统日志&#xff0c;识别攻击特征&#xff1a; # monitor_attack.py import json import subprocess from…...

SpringCloud微服务架构设计与实践 - 面试实战

SpringCloud微服务架构设计与实践 - 面试实战 第一轮提问 面试官&#xff1a;马架构&#xff0c;请问在SpringCloud微服务架构中&#xff0c;如何实现服务注册与发现&#xff1f; 马架构&#xff1a;在SpringCloud中&#xff0c;Eureka是常用的服务注册与发现组件。服务提供…...

每日算法——快乐数、两数之和

202. 快乐数 class Solution { public:bool isHappy(int n) {unordered_set<int> result_set;while(true){int sum 0;while(n>0){sum (n%10)*(n%10);n/10;}if(sum1){return true;}else{if(result_set.find(sum) ! result_set.end()){return false;}result_set.inser…...

反射,枚举,lambda表达式

目录 反射枚举的使用Lambda表达式函数式接口语法Lambda表达式语法精简 变量捕获Lambda在集合List中的使用 反射 作用&#xff1a;在Java代码中&#xff0c;让一个对象认识到自己 比如一个类的名字&#xff0c;里面的方法&#xff0c;属性等 让程序运行的过程&#xff0c;某个对…...

matlab 绘图

1.三维绘图 % 原始数据&#xff08;按行输入&#xff1a;x y z&#xff09; data [1 2 3 ;5 56 234 ;32 34 67 1 2 5 ];% 提取坐标并生成网格&#xff08;适用于surf函数的网格格式&#xff09; x data(:,1); % X坐标&#xff08;行数对应Y轴&#xff09; y data…...

AI日报 - 2025年04月25日

&#x1f31f; 今日概览(60秒速览) ▎&#x1f916; AGI突破 | OpenAI o3模型展现行动能力&#xff0c;英国发布RepliBench评估AI自主复制风险&#xff0c;DeepMind CEO担忧AGI协调挑战。 模型能力向行动和自主性演进&#xff0c;安全与协调成为焦点。 ▎&#x1f4bc; 商业动向…...

力扣面试150题--基本计算器

Day 31 题目描述 思路 &#xff08;逆波兰表达式扩展&#xff09; 初次思路&#xff1a;此题我遇到了几个难点 如何处理&#xff08;&#xff09;如何处理-1和2-1中的负数还是减法问题 1-&#xff08;-&#xff08;12&#xff09;&#xff09;如何处理多余的空格 我的做法如…...

各种各样的bug合集

一、连不上数据库db 1.可能是密码一大包东西不对&#xff1b; 2.可能是里面某个port和数据库不一样&#xff08;针对于修改了数据库但是连不上的情况&#xff09;&#xff1b; 3.可能是git代码没拉对&#xff0c;再拉一下代码。❤ 二、没有这个包 可能是可以#注释掉。❤ …...

【25软考网工】第三章(3)虚拟局域网VLAN

一、虚拟局域网VLAN 1. VLAN基础 定义&#xff1a;根据管理功能、组织机构或应用类型对交换局域网进行分段而形成的逻辑网络。例如将大型网络划分为多个VLAN&#xff08;如VLAN1-4&#xff09;。 优势&#xff1a; 管理便利&#xff1a;便于对不同部门或功能进行分组管理安全隔…...

SFINAE(Substitution Failure Is Not An Error)

C 中的 SFINAE&#xff08;替换失败并非错误&#xff09; SFINAE&#xff08;Substitution Failure Is Not An Error&#xff09;是 C 模板元编程的核心机制之一&#xff0c;允许在编译时根据类型特性选择不同的模板实现。以下通过代码示例和底层原理&#xff0c;逐步解析 SFI…...

学习记录:DAY17

我的学习日志&#xff1a;前端开发练习 前言 只想畏缩在自己的床上&#xff0c;什么也不想干&#x1f630; 我觉得有必要调整一下复习方针&#xff0c;不然容易白学。 我确实不太爱复习的人&#xff0c;尽量每天抽出时间来复习昨天的内容&#xff0c;周末总体复习一下一个星期…...

LibrePhotos本地部署打造个人云相册安全存储和分享家庭照片(1)

文章目录 前言1.关于LibrePhotos2.本地部署LibrePhotos3.LibrePhotos简单使用4. 安装内网穿透5.配置LibrePhotos公网地址6. 配置固定公网地址 前言 手机里塞满了珍贵回忆&#xff0c;却担心一不小心就被偷看&#xff1f;别怕&#xff0c;今天我就教你一个绝招——使用LibrePho…...

Android插拔U盘导致黑屏问题排查

问题现象&#xff1a; 车机大屏偶先插拔带音乐的U盘&#xff0c;导致车机系统短暂黑屏的情况。 日志中可以看到vold进程unmount了两次分区&#xff0c;一次是U盘分区&#xff0c;一次是/storage/emulated/0分区&#xff1a; I vold : Start killProcesses: /mnt/media_rw/…...

Android Build Variants(构建变体)详解

Android Build Variants&#xff08;构建变体&#xff09;是 Android 开发中用于生成不同版本应用程序的一种机制。它允许开发者根据不同的需求&#xff0c;如不同的应用市场、不同的功能模块、不同的环境配置等&#xff0c;从同一个代码库中生成多个不同的 APK。 组成部分 B…...

看一看 中间件Middleware

中间件&#xff08;Middleware&#xff09;是介于操作系统与应用程序之间的一层软件 它为分布式应用程序提供了统一的通信、数据交换、服务调用、消息传递等能力。 它的作用就像“胶水”&#xff0c;连接各个系统组件。 文章目录 消息队列缓存中间件数据库中间件服务注册与发现…...

ai人才需要掌握什么

在人工智能(AI)技术重塑全球产业格局的今天,AI人才的核心竞争力已超越单一技术维度,演变为“技术深度+人文广度+伦理自觉”的三维能力模型。本文将从技术能力体系、跨学科思维、伦理与治理三个层面,解析AI人才的核心能力框架,并针对技术局限性提出系统性应对策略。 一、…...

‌RISC-V低功耗MCU动态时钟门控技术详解

我来分享一下RISC-V核低功耗MCU的动态时钟门控技术实现&#xff1a; 这款MCU通过硬件级时钟门控电路实现了模块级的功耗管理。当外设&#xff08;如UART、SPI&#xff09;处于闲置状态时&#xff0c;系统会自动切断其时钟信号&#xff0c;减少无效翻转功耗。同时支持多电压域协…...

第十天 Shader编程:编写简单表面着色器 Addressable资源管理系统 DOTS(面向数据技术栈)入门

前言 作为Unity初学者&#xff0c;在实现复杂场景时经常会遇到性能瓶颈。本文将带你通过四个关键技术的实战学习&#xff0c;掌握现代Unity开发的核心优化方案&#xff1a; Shader编程 - 编写表面着色器控制物体渲染Addressable系统 - 实现高效资源管理DOTS技术栈 - 解锁百万…...

把dll模块注入到游戏进程的方法_插APC注入

一、概述 APC是异步过程调用,系统创建线程的时候会为线程创建一个APC队列,当线程调用SleepEx,WaitSingleObjectEx等函数时,并把线程状态被设置为可提醒状态时,线程并不会睡眠,而是检查APC队列是否为空,如果不为空,转去执行APC队列中的每一项,因此给目标进程中的线程插…...