Chuyển đến nội dung chính

Bài đăng

Hiển thị các bài đăng có nhãn Storage

Solidity Web3 bài 32: View Functions không tốn GAS khi gọi từ bên ngoài hợp đồng. Tối ưu gas trong SOLIDITY

View Functions Tự học Solidity bài 32: View Functions không tốn GAS khi gọi từ bên ngoài hợp đồng. Tối ưu gas trong SOLIDITY Summary for English Visiter 1. view functions don't cost any gas when they're called externally by a user. 2. One of the more expensive operations in Solidity is using storage — particularly writes. function getArray() external pure returns(uint[] memory) { // Instantiate a new array in memory with a length of 3 uint[] memory values = new uint[](3); // Put some values to it values[0] = 1; values[1] = 2; values[2] = 3; return values; } Tâm sự chút :) Sau bài học này chúng ta sẽ dễ dàng phân biệt được khi nào tốn GAS và khi nào thì không. Nếu một chức năng chỉ đọc dữ liệu trên blockchain thì nó sẽ không tốn GAS, những chức năng có ghi dữ liệu vào block và đồng bộ tât cả các khối khác trên blockchain thì nó phải mất phí GAS. Chính vì việc đọc dữ liệu chuỗi trên blockchain không mất phí GAS nên mới có những trang web tra cứu chuỗi khối mà chún

Tự học Solidity bài 19: Storage & Memory trong ngôn ngữ lập trình Solidity

Storage & Memory Ngôn ngữ lập trình Solidity. Tài liệu tự học Solidity.  Trong khoá học online miễn phí Tự học lập trình web3 - Tự học ngôn ngữ lập trình Solidity Summary for English Visiter Sandwich[] sandwiches; function eatSandwich(uint _index) public { // So instead, you should declare with the ` storage ` keyword Sandwich storage mySandwich = sandwiches[_index]; mySandwich.status = "Eaten!"; // If you just want a copy, you can use ` memory `: Sandwich memory anotherSandwich = sandwiches[_index + 1]; anotherSandwich.status = "Eaten!"; sandwiches[_index + 1] = anotherSandwich; } Thank you! Vị trí dữ liệu Trong Solidity, có hai vị trí bạn có thể lưu trữ các biến - trong bộ lưu trữ Storage và trong bộ nhớ Memory . Storage  trỏ đến các biến được lưu trữ vĩnh viễn trên blockchain .  Memory là các biến là tạm thời và bị xóa giữa các lệnh gọi hàm. Có thể hình dung nó giống như lưu trữ dư liệu trong ổ đĩa cứng và  RAM .