이더리움 트랜잭션 수수료 처리하는 로직에 대해 자세히 설명하는 자료가 있을까요?

2018. 12. 08. 03:12

이더리움 수수료가 제가 생각하는 상식과는 다르게 책정되는 것 같은데, 트랜잭션 수수료 관련 상세자료가 있을까요?


코드상으로는 더 복잡한데 수수료가 더 적게 책정되는 경우가 있습니다.


예를 들어 아래 코드에서 배열에 하나의 변수를 넣어주는 func1과 func2중 for문으로 감싼 func2 실행 수수료가 더 적게 나옵니다.

이유가 뭘까요?


uint256 a[10];


function func1() {

    A[0] = 100;

}


function func2() {

    for(uint256 i=0; i<1; i++) {

        a[i] =100;

    }

}


공유하고 돈벌기 ♥︎

총 1개의 답변이 있습니다.

질문자 채택 답변
동국대학교 BLEPHANT / BlockSmith

안녕하세요. 류쨩입니다.


pragma solidity ^0.4.25;

contract test {
    uint256[10] a;

    function func1() public {
        a[0] = 100;
    }
    
    function func2() public {
    
        for(uint256 i=0; i < 1; i++) {
    
            a[i] =100;
        }
    }
}


위와 같은 코드일 때, func2가 가스비가 더 소모되게 됩니다. uint256 i / 그 외 조건 검사와 증감 연산자등 때문입니다.


[func1() 호출]


[func2 호출]



2018. 12. 08. 09:07
27