Wenn ich einen Smart Contract bereitstelle, erstellt er einen neuen Block oder wenn ich einen Schreibvorgang im Smart Contract ausführe

Ich bin neu in der Entwicklung von Smart Contracts und Ethereum DAPPS. Ich bin nur neugierig zu erfahren, wann Blöcke erstellt werden und wie sich ein Block von einer Transaktion unterscheidet und ein neuer Block erstellt wird. Wenn ein Vertrag bereitgestellt wird, ist dies auch eine Transaktion? Wenn ich eine Funktion in einem Smart Contract aufrufe, der eine Aktualisierung durchführt, ist dies auch eine Transaktion?

Wenn ja, wann wird der Block erstellt?

Betrachten Sie den folgenden intelligenten Vertrag.

contract mortal {
    /* Define variable owner of the type address */
    address owner;

    /* This function is executed at initialization and sets the owner of the contract */
    function mortal() { owner = msg.sender; }

    /* Function to recover the funds on the contract */
    function kill() { if (msg.sender == owner) selfdestruct(owner); }
}

contract greeter is mortal {
    /* Define variable greeting of the type string */
    string greeting;

    /* This runs when the contract is executed */
    function greeter(string _greeting) public {
        greeting = _greeting;
    }

    /* Main function */
    function greet() constant returns (string) {
        return greeting;
    }

    function updateGreet(string _greeting) public payable returns(bool) {
        greeting = _greeting;
        return true;
    } 
}

Der obige Code stammt von https://ethereum.org/greeter und wurde so modifiziert, dass jeder greetingdie Zeichenfolge aktualisieren kann, indem er updateGreetingdie Funktion im Greeter Smart Contract aufruft. Betrachtet man also diesen intelligenten Vertrag. Bitte helfen Sie mir, das Konzept zu verstehen.

Du stellst zu viele Fragen auf einmal. Darüber hinaus steht alles, was Sie fragen, im Yellow Paper ( ethereum.github.io/yellowpaper/paper.pdf ) oder in der Solidity-Dokumentation. BITTE erwägen Sie die Verwendung von Google, bevor Sie diese Art von Fragen stellen.

Antworten (1)

- wissen, wann Blöcke erstellt werden und wie sich ein Block von einer Transaktion unterscheidet und ein neuer Block erstellt wird: Seite 3, Teil 4 Blöcke, Status und Transaktionen

  • Wenn ein Vertrag bereitgestellt wird, ist dies auch eine Transaktion? Ja
  • Wenn ich eine Funktion in einem Smart Contract aufrufe, der eine Aktualisierung durchführt, ist dies auch eine Transaktion?

Ja. Eine Funktion, die den Zustand des EVM ändert, ist eine "Transaktion", sie kostet Benzin. Eine Funktion, die den Zustand des EVM nicht ändert, ist ein "Aufruf", sie ist kostenlos.

  • Wenn ja, wann wird der Block erstellt? Wenn dies mit der vorherigen Frage zusammenhängt, empfehle ich Ihnen DRINGEND , die Dokumentation dazu zu lesen.

  • Bitte helfen Sie mir, das Konzept zu verstehen.

Welches Konzept? Dies ist nur ein sehr einfacher Code. Wo ist die Frage.

BITTE stellen Sie eine Frage pro Beitrag. Darüber hinaus sind alles, was Sie gefragt haben, grundlegende Dinge, die in der Dokumentation verfügbar sind, die Sie gelesen haben sollten, BEVOR Sie kommen und fragen.

Danke, ich werde sicherlich das gelbe Papier lesen. Du hast mir die Augen geöffnet