1

たとえば、一連の呼び出しのステータスを追跡する必要があるテスト ケースを書きたいとします。

私はこのようなものを得ることができます:

async_fun(function () {
    // Do something ...

    async_fun(function () {
        // Do something ...

        async_fun(function () {
            // Do something ...
            // ...
        });
    });
});

async_fun();

大きなループを実行する必要がある場合、以下のような末尾再帰を作成できます。

function helper (mount) {
    async_fun(function (){
        if (mount) return;

        // Do something ...

        helper(mount--);
    });
}

helper(10000);

しかし、V8 エンジンにはテール コールの最適化が行われていないため、RAM を食い尽くす可能性があると聞きました。このタスクを達成するためのより良い設計パターンはありますか?

PS: 3 番目のライブラリはありません。ネイティブ ソリューションが必要です。

4

1 に答える 1