首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在solana上使用锚时引起的堆栈错误

在solana上使用锚时引起的堆栈错误
EN

Stack Overflow用户
提问于 2022-01-18 14:31:26
回答 1查看 761关注 0票数 0

我正在用锚框架开发solana的链上程序.

但是我的堆栈错误已经崩溃了。

代码语言:javascript
复制
#[derive(Accounts)]
pub struct ClaimNftContext<'info> {
    #[account(mut)]
    pool: Account<'info, Pool>,
    pool_signer: AccountInfo<'info>,
    vault: AccountInfo<'info>, 
    user: Signer<'info>,
    mint: Account<'info, Mint>,
    #[account(mut)]
    nft_from: Account<'info, TokenAccount>,
    #[account(mut)]
    nft_to: Box<Account<'info, TokenAccount>>,
    #[account(mut)]
    token_from: Account<'info, TokenAccount>, 
    #[account(mut)]
    token_to: Account<'info, TokenAccount>, 
    token_program: Program<'info, Token>
}

如您所见,ClaimNftContext中有10个帐户,但如果我删除一个帐户,则没有错误。

我认为堆栈大小在锚上是有限的。

我该怎么做?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-01-20 01:45:37

锚有有限的堆栈大小。

那么,是否不可能从上下文中获得超过9个帐户呢?

幸运的是,有一种方法可以减少堆栈。

那是盒子。

我们可以这样用:

token_from:方框,然后我们可以获得更多的帐户。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70757282

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档