9、以太坊智能合约开发(暂停运行合约和合约升级)

暂停正在运行的智能合约

为什么要暂停正在运行的合约?

答:Stop Loss(及时止损)。假如智能合约编写的有重大bug,会引起合约里的财产被盗、钱被偷了,由于区块链具有不能变性(Immutability),部署到mainnet上的合约一旦生成就是固定的了,遇到这种bug,我们一定要提前在合约里设计好规则,比如提供可设置合约可用性的函数,使得合约里的所有函数,或者跟转账、提款等重要的函数进行约束暂停使用、开放使用等功能,并将此功能写到modifier里,使得函数很容易受到约束的控制。

调用该函数是合约拥有者调用,不能是其他人

address private contractOwner; // 合约的拥有者   
bool private contractAvailabilityStatus = true; // 合约可用性  

constructor () public {
    contr

猜你喜欢

转载自blog.csdn.net/u013538542/article/details/104163497