gpt4 book ai didi

rust - 如何正确使用LockableCurrency特性?

转载 作者:行者123 更新时间:2023-12-03 11:36:29 25 4
gpt4 key购买 nike

我想知道LockableCurrency如何工作?更具体地说,WithdrawReasons是什么?它仅仅是一个标记,还是此处指定的值对于实际释放锁很重要?
我的用例是,我想在一定时间内锁定资金以进行转移,然后转移这些资金或释放锁定。所以我应该只使用WithdrawReasons:all()吗?
另外,我想我可以使用substring(hash(AccountId))作为锁标识符,以这种方式为每个帐户创建锁是一个好主意吗?

最佳答案

如果您只想禁止转账,那么您应该使用仅禁止撤回原因转账的锁。 WithdrawReason::Transfer。尽管请注意,用户很可能会找到解决此问题的方法,因为他们可以给大笔作者小费或用锁定资金支付交易费,因此,如果他们碰巧与大笔作者串通,他们可以有效地欺骗系统。
您实际想要的可能是WithdrawReason::all()

And as a side note - I thought I could use a substring(hash(AccountId)) for the lock identifier, is it a good idea create the lock per each account this way?


我不会那样做。每个锁已经链接到一个帐户,并且用于添加和删除锁的API已经要求操作一个帐户。因此,我认为使用帐户哈希作为键是重复的(也可能会对性能产生不良影响)。您应该遵循以下约定:在基板上使用托盘中的唯一标识符作为锁标识符(简单来说:托盘的名称即可)。这样可以确保此货盘创建的锁不会被其他货盘意外取下。

关于rust - 如何正确使用LockableCurrency特性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65654931/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com