首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >.transfer问题

.transfer问题
EN

Ethereum用户
提问于 2018-06-14 11:09:23
回答 1查看 34关注 0票数 0

传递函数是如何表现的?正在查看我创建的函数,在删除决定是否允许该函数的数据之前,我们将以太从合同中转移出去。很多代码是隐藏的,因为它并不是真正相关的。

我想知道user.transfer()中的传输是何时发生的?假设有人在同一时间两次调用该函数,因此这两个调用都进入if语句,user.transfer()被调用了两次,因此调用了两次。

之后,在删除自行车中;后面的调用将抛出一个错误,因为信息已经被删除。在调用中,删除自行车;抛出一个错误,user.transfer还会被执行吗?还是会恢复,从而彻底消除问题?如果它是任何其他代码,由于错误,整个事务将被恢复而不被执行,但是user.transfer()是否也是那样的呢?

我知道我可以在user.transfer上移动删除自行车,这不会有什么问题,但更多的是出于好奇。

代码语言:javascript
复制
func{
    //some code and checks whether the _serialNo, corresponds to a stolen bike etc.
    user.transfer(Bikes[_serialNo].insuredAmount);
    delete Bikes[_serialNo];
}
EN

回答 1

Ethereum用户

发布于 2018-06-14 14:54:58

假设有人在同一时间两次调用该函数,因此这两个调用都进入if语句,user.transfer()被调用了两次,因此调用了两次。

这是不可能的,因为没有并发性。如果提交了两个事务,一个事务将在另一个事务之前执行(完全)。

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

https://ethereum.stackexchange.com/questions/51217

复制
相关文章

相似问题

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