When the wallet is rescanned at startup in `bitcoind`, there seems to be no way to interrupt that in a clean way (other than forcefully killing the process).
{
    AssertLockHeld(cs_main);
    AssertLockHeld(cs_wallet);
    vCoins.clear();
    CAmount nTotal = 0;
    for (const auto& entry : mapWallet)
    {
        const uint256& wtxid = entry.first;
        const CWalletTx* pcoin = &entry.second;
        if (!CheckFinalTx(*pcoin->tx))
            continue;
        if (pcoin->IsCoinBase() && pcoin->GetBlocksToMaturity() > 0)
            continue;
        int nDepth = pcoin->GetDepthInMainChain();
        if (nDepth < 0)
            continue;
        
        
        if (nDepth == 0 && !pcoin->InMempool())
            continue;
        bool safeTx = pcoin->IsTrusted();