This happens to me that my computer forces qt to exit because my disk is running out of memory

Should we skip syncing or check and show warning beforehand  when disk size available is enough for syncing all blocks?

Also wondering how large free disks should I prepare for syncing all the blocks?
"-signer",
            "-startupnotify",
            "-walletnotify",
        };
        for (const std::string& feature_using_execve : features_using_execve) {
            if (!args.GetArg(feature_using_execve, "").empty()) {
                return InitError(Untranslated(strprintf("The experimental syscall sandbox feature (-sandbox=<mode>) is incompatible with %s (which uses execve).", feature_using_execve)));
            }
        }
        if (!SetupSyscallSandbox(log_syscall_violation_before_terminating)) {
            return InitError(Untranslated("Installation of the syscall sandbox failed."));
        }
        if (use_syscall_sandbox) {
            SetSyscallSandboxPolicy(SyscallSandboxPolicy::INITIALIZATION);
        }
        LogPrintf("Experimental syscall sandbox enabled (-sandbox=%s): bitcoind will terminate if an unexpected (not allowlisted) syscall is invoked.\n", sandbox_arg);
    }
#endif 
    
    {
        ChainstateManager::Options chainman_opts_dummy{
            .chainparams = chainparams,
        };
        if (const auto error{ApplyArgsManOptions(args, chainman_opts_dummy)}) {
            return InitError(*error);
        }
    }
    return true;
}
static bool LockDataDirectory(bool probeOnly)