EOS 网络带宽(NET)解除质押完全指南:cleos system undelegatebw 实战解析

发布时间:2026/9/24 9:15:47

EOS 网络带宽(NET)解除质押完全指南:cleos system undelegatebw 实战解析 区块链【免费下载链接】eosAn open source smart contract platform项目地址https://gitcode.com/gh_mirrors/eo/eos点击查看免费下载在 EOS 主网与基于 eosio 的链上账户通过质押stake系统代币获得 CPU 与 NET网络带宽资源而资源不再需要时则通过解除质押undelegate回收代币。本指南基于当前仓库gh_mirrors/eo/eos中的官方 how-to 文档docs/02_cleos/02_how-to-guides/how-to-undelegate-NET.md系统讲解cleos system undelegatebw命令的用法、参数、执行结果解读及其底层实现原理。读完本文你将能够独立完成「把委托给其他账户的 NET 带宽撤回」这一完整操作并理解该命令如何映射为链上的eosio::undelegatebw动作。目标解除账户或应用委托出去的资源Undelegate resource for an account or application。需要特别警惕的是只有最初委托delegate资源的那个账户才有权限解除该笔资源的质押。也就是说如果账户alice把 NET 带宽委托给了账户bob那么只有alice作为from参数能够发起撤回bob无权代替操作。开始之前前置条件在执行解除 NET 质押之前请确认满足以下条件安装当前受支持的cleos版本cleos是与链交互的命令行客户端位于本仓库的 programs/cleos 目录核心实现在 main.cpp。请确保版本与所连接节点兼容。确保已部署参考系统合约系统资源CPU/NET 带宽质押由eosio.contracts仓库中的参考系统合约管理。本仓库unittests下保留了预编译的 eosio.system 合约 ABI 用于测试实际部署请以官方发布的 eosio.system 合约为准。理解以下基础概念什么是账户account什么是网络带宽network bandwidth即 NET什么是 CPU 带宽CPU bandwidth。核心步骤一条命令解除 NET 质押原文档给出的实战示例是从账户alice解除 0.01 SYS 的网络带宽将其撤回给账户bobcleos system undelegatebw bob alice 0 SYS 0.01 SYS执行后你会看到类似下面的输出executed transaction: e7e7edb6c5556de933f9d663fea8b4a9cd56ece6ff2cebf056ddd0835efa6606 184 bytes 452 us # eosio eosio::undelegatebw {from:alice,receiver:bob,unstake_net_quantity:0.01 EOS,unstake_cpu_qu... warning: transaction executed locally, but may not be confirmed by the network yet ]逐字段解读这段输出executed transaction: txid交易哈希可在区块浏览器中查询该交易的详情184 bytes交易原始字节大小452 us本地执行耗时微秒# eosio eosio::undelegatebw交易调用了eosio账户上的undelegatebw动作其中{from:alice,receiver:bob,unstake_net_quantity:0.01 EOS,...}为动作参数注意示例输出中的 token 符号显示为EOS是节点侧配置的符号显示命令中应使用你所在链的符号如SYSwarning: transaction executed locally, but may not be confirmed by the network yet警告信息表示交易已在本地节点执行但尚未被网络确认出块属正常现象稍后可查询交易确认状态。命令位置参数详解该命令共 4 个位置参数定义于仓库 programs/cleos/main.cpp与官方命令参考 system-undelegatebw.md 一致位置参数类型含义fromTEXT解除带宽质押的账户必须是原委托者receiverTEXT被撤回带宽的账户即当初的接收者unstake_net_quantityTEXT要解除的网络带宽质押数量如0.01 SYSunstake_cpu_quantityTEXT要解除的 CPU 带宽质押数量如0 SYS在示例中fromalice、receiverbob语义为alice把之前委托给bob的 NET 带宽解除质押并撤回给自己。若只想解除 NET 而不动 CPU将 CPU 数量填0 SYS即可反之亦然参见姊妹篇 how-to-undelegate-CPU.md。常用选项Optionscleos system undelegatebw继承 cleos 标准交易选项常用如下-h, --help打印帮助信息并退出-x, --expiration TEXT设置交易过期时间秒默认 30s-f, --force-unique强制交易唯一会消耗额外带宽取消对重复发送相同交易的保护-s, --skip-sign跳过签名不使用钱包中的已解锁密钥签名-d, --dont-broadcast不广播到网络仅打印到标准输出-r, --ref-block TEXT设置用于 TAPOSTransaction as Proof-of-Stake的参考区块号或区块 ID-p, --permission TEXT授权的账户与权限级别格式accountpermission默认accountactive--max-cpu-usage-ms UINT交易执行 CPU 预算上限毫秒默认 0 表示不限制--max-net-usage UINT交易网络用量预算上限字节默认 0 表示不限制--delay-sec UINT设置延迟交易秒数默认 0s-j, --json以 JSON 格式打印结果。实际签名与广播所需密钥由本机 keosd 钱包提供若未指定--permission默认使用fromactive权限见源码 main.cpp。底层原理cleos 如何构造这笔交易从源码结构看cleos system undelegatebw由undelegate_bandwidth_subcommand子命令类实现programs/cleos/main.cpp其工作流程可以概括为定义 4 个必填位置参数from、receiver、unstake_net_quantity、unstake_cpu_quantity并附加标准交易选项与签名选项默认权限fromactive回调函数中将两个数量字符串通过to_asset()转换为asset类型构造动作负载fc::variant act_payload fc::mutable_variant_object() (from, from_str) (receiver, receiver_str) (unstake_net_quantity, to_asset(unstake_net_amount)) (unstake_cpu_quantity, to_asset(unstake_cpu_amount));以fromactive权限构造动作并发送到系统账户eosioconfig::system_account_name动作名为undelegatebwauto accountPermissions get_account_permissions(tx_permission, {name(from_str), config::active_name}); send_actions({create_action(accountPermissions, config::system_account_name, undelegatebw_n, act_payload)}, signing_keys_opt.get_keys());即cleos system undelegatebw本质上是对链上eosio::undelegatebw动作的一层 CLI 封装。系统合约eosio.system收到该动作后会校验from是否为资源所有者、检查可用余额并执行实际的资源释放与代币归还逻辑——该逻辑属于eosio.contracts仓库的 eosio.system 合约实现。测试验证单元测试中的 unstake 封装本仓库的单元测试框架对undelegatebw动作也做了封装可用于验证命令的调用形态。在 unittests/eosio_system_tester.hpp 中action_result unstake( const account_name from, const account_name to, const asset net, const asset cpu ) { return push_action( name(from), undelegatebw_n, mvo() (from, from) (receiver, to) (unstake_net_quantity, net) (unstake_cpu_quantity, cpu) ); }可以看到测试封装的动作参数与 CLI 的 4 个位置参数一一对应且以from账户身份push_action发送——再次印证了「必须由原委托者发起」的权限约束。此外eosio_system_tester.hpp 中还有同时包含delegatebw、voteproducer与undelegatebw多动作交易的构造示例展示了在实际测试中如何先质押再解除质押的完整流程。关联操作与延伸阅读委托质押带宽cleos system delegatebw是解除质押的逆操作参考 how-to-delegate-net-resource.md 与 how-to-delegate-CPU-resource.md命令参考见 system-delegatebw.md查询带宽委托情况cleos system listbw account可查看某账户当前的 CPU/NET 委托明细命令参考见 system-listbw.md解除 CPU 质押操作方式与本文完全一致区别仅在于把数量填入unstake_cpu_quantity详见 how-to-undelegate-CPU.md完整命令参考undelegatebw的全部位置参数与选项见 system-undelegatebw.md概念背景资源质押、购买 RAM 等资源模型相关的介绍可参考 docs/01_nodeos/07_concepts 目录下的文档。注意事项与常见误区只有原委托者可以解除这是该操作最核心的权限限制。若from不是当初delegatebw的发起者系统合约将拒绝该交易符号以所在链为准命令中的 token 符号如SYS应与当前链的核心符号一致示例输出中显示的EOS仅是节点配置的显示符号数量可部分解除unstake_net_quantity与unstake_cpu_quantity可以分别指定支持只解除 NET、只解除 CPU 或两者同时解除数量填0 SYS表示不解除该部分资源不会立即生效解除质押的带宽不会瞬间释放系统合约通常存在 3 天的赎回等待期视链配置而定在此期间相关带宽仍不可用确保钱包已解锁交易需要签名请先确保 keosd 钱包已解锁且包含from账户的私钥否则会提示签名失败。通过本文的讲解你可以安全地使用cleos system undelegatebw完成 NET 带宽的解除质押操作并理解其从 CLI 参数解析、动作构造到链上执行的完整链路。赞分享区块链【免费下载链接】eosAn open source smart contract platform项目地址https://gitcode.com/gh_mirrors/eo/eos点击查看免费下载相关推荐EOSIO cleos 命令详解用 cleos system newaccount 一步完成账户创建、RAM 购买与带宽质押EOSIO cleos 命令详解用 cleos system newaccount 一步完成账户创建、RAM 购买与带宽质押 导读 cleos system区块链EOSIO 委托网络带宽NET资源cleos system delegatebw 操作指南与底层原理EOSIO 委托网络带宽NET资源cleos system delegatebw 操作指南与底层原理 导读 本文基于本仓库eo/eos中《How to区块链使用 cleos system delegatebw 为 EOS 账户委托 CPU 带宽资源含源码级解析使用 cleos system delegatebw 为 EOS 账户委托 CPU 带宽资源含源码级解析 本指南以仓库文档 how to delegate区块链创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/9/24 9:15:47

5款免费开源AI编程工具实测:Claude Code替代方案与选型指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/24 10:25:56

ARM学习笔记(8)

今天整理 i2c 的笔记,总线这个东西看着简单,把时序捋清楚也就通了大半。I2C 是什么I2C 是两根线的串行通信总线,一根 SCL 时钟线、一根 SDA 数据线。靠地址寻址从机,地址是 7 位,最多能挂 127 个从机。起始信号之后发的…

2026/9/24 10:25:56

ESP8266与KiwisIoT实现低成本远程水位监测与告警系统

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/24 10:25:56

Tinkercad电路仿真实战:从点亮LED到Arduino闪烁与555定时器

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/24 10:20:55

2026好用H5工具测评:人人秀易企秀MAKA等主流平台的5大差异

2026年,H5工具选型已经进入“付费价值验证”阶段。企业不再只问“能不能做H5”,而是更关心:付费之后,能不能把创意设计、互动营销、私域获客、数据追踪、团队协作和系统部署串成一条闭环。本文只对比各平台付费版本,围…

2026/9/23 12:07:00

GAMP 5 基于风险的计算机化系统验证:软件分类与审计追踪实践

简介:《A Risk-Based Approach to Compliant GxP Computerized Systems》即业内熟知的GAMP 5指南,面向制药企业质量与IT合规人员、验证工程师及计算机化系统管理者,用于解决GxP法规环境下系统合规性难以科学落地的问题。文档以风险管理为主线…

2026/9/23 12:06:55

安全托管MSSP实战:从静态防御到人机协同的攻防运营与应急响应

简介:这份PPT围绕互联网业务安全托管服务展开,面向企业安全负责人、IT运维人员及关注MSSP/MSS选型的读者,重点回应传统安全过度依赖人工、碎片化静态防御难以对抗产业化攻击等痛点。资源共1个pptx文件,包体约30.63MB,以…

2026/9/24 0:00:21

基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程

简介:这是一套面向计算机、人工智能、自动化等专业学生与教师的毕业设计级项目资源,围绕YOLOv8实现渔船作业监控系统,可用于毕设、课程设计、大作业或项目立项演示。压缩包共97个文件,约24.21MB,以70个Python源码文件为…

2026/9/24 0:00:21

单细胞注释实战:基于Scanpy的标记基因与参考映射流程解析

简介:一份基于单细胞RNA测序数据的细胞类型注释算法研究Python毕业设计源码,针对计算机相关专业正在做毕设或需要项目实战的学习者,可用于课程设计与期末大作业。项目代码完整、经导师指导评审通过,可直接运行,覆盖数据…

2026/9/24 0:00:21

C#源生成器实战:用增量生成器替代反射,告别AOT崩溃

第一次在项目里被反射卡住,是在一个老旧的WinForms模块里:几十个类依赖PropertyChanged通知,运行时反射读属性、发通知,每次启动慢半拍不说,一上.NET Native/AOT裁剪模式几乎全面崩盘。后来我把这段逻辑全部改成C#源生…

2026/9/22 16:34:32

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/22 20:01:30

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/22 13:25:41

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
咨询二维码