Blockchain 合同被杀死,但收到乙醚

Blockchain 合同被杀死,但收到乙醚,blockchain,ethereum,solidity,Blockchain,Ethereum,Solidity,我对坚固性中的自毁功能表示怀疑。我的合同如下: pragma solidity ^0.4.25; contract TestMetamask { string public name = "Joao"; event EtherReceived(); function changeName(string _name) public { name = _name; } function() public payable { emit EtherReceived()

我对坚固性中的自毁功能表示怀疑。我的合同如下:

pragma solidity ^0.4.25;

 contract TestMetamask {

 string public name = "Joao";
 event EtherReceived();

 function changeName(string _name) public {
    name = _name;
 }

 function() public payable {
    emit EtherReceived();
 }

 function receiveEther() payable public {
    address(this).transfer(msg.value);
 }

 function balance() public view returns (uint256) {
    return address(this).balance;
 }

 function kill() public {
    selfdestruct(msg.sender);
 }
}
所以这个契约是有效的,但是当我执行函数kill()时,契约在函数paymentreceiveEther中不断获取接收以太。 另一个函数不起作用,并且状态变量是干净的,问题只是契约被破坏了

这是rinkeby的合同地址:

有人经历过同样的情况吗


tks.

自毁后,仍有可能将乙醚发送到合同中,合同将永远丢失。 请参见此问题: