当前位置: 首页>>代码示例>>Java>>正文


Java ThreadPool.scheduleThread方法代码示例

本文整理汇总了Java中nxt.util.ThreadPool.scheduleThread方法的典型用法代码示例。如果您正苦于以下问题:Java ThreadPool.scheduleThread方法的具体用法?Java ThreadPool.scheduleThread怎么用?Java ThreadPool.scheduleThread使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在nxt.util.ThreadPool的用法示例。


在下文中一共展示了ThreadPool.scheduleThread方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: TransactionProcessorImpl

import nxt.util.ThreadPool; //导入方法依赖的package包/类
private TransactionProcessorImpl() {
    ThreadPool.scheduleThread("ProcessTransactions", processTransactionsThread, 5);
    ThreadPool.scheduleThread("RemoveUnconfirmedTransactions", removeUnconfirmedTransactionsThread, 1);
    if (enableTransactionRebroadcasting) {
        ThreadPool.scheduleThread("RebroadcastTransactions", rebroadcastTransactionsThread, 60);
        ThreadPool.runAfterStart(new Runnable() {
            @Override
            public void run() {
                try (DbIterator<TransactionImpl> oldNonBroadcastedTransactions = getAllUnconfirmedTransactions()) {
                    for (TransactionImpl transaction : oldNonBroadcastedTransactions) {
                        nonBroadcastedTransactions.add(transaction);
                    }
                }
            }
        });
    }
}
 
开发者ID:muhatzg,项目名称:burstcoin,代码行数:18,代码来源:TransactionProcessorImpl.java

示例2: TransactionProcessorImpl

import nxt.util.ThreadPool; //导入方法依赖的package包/类
private TransactionProcessorImpl() {
    ThreadPool.scheduleThread("ProcessTransactions", processTransactionsThread, 5);
    ThreadPool.scheduleThread("RemoveUnconfirmedTransactions", removeUnconfirmedTransactionsThread, 1);
    ThreadPool.runAfterStart(new Runnable() {
        @Override
        public void run() {
            synchronized (BlockchainImpl.getInstance()) {
                try (DbIterator<UnconfirmedTransaction> oldNonBroadcastedTransactions = getAllUnconfirmedTransactions()) {
                    for (UnconfirmedTransaction unconfirmedTransaction : oldNonBroadcastedTransactions) {
                        if (unconfirmedTransaction.getTransaction().isUnconfirmedDuplicate(unconfirmedDuplicates)) {
                            Logger.logDebugMessage("Skipping duplicate unconfirmed transaction " + unconfirmedTransaction.getTransaction().getJSONObject().toString());
                        } else if (enableTransactionRebroadcasting) {
                            broadcastedTransactions.add(unconfirmedTransaction.getTransaction());
                        }
                    }
                }
            }
        }
    });
    if (enableTransactionRebroadcasting) {
        ThreadPool.scheduleThread("RebroadcastTransactions", rebroadcastTransactionsThread, 60);
    }
}
 
开发者ID:giannisKonst,项目名称:blockchain,代码行数:24,代码来源:TransactionProcessorImpl.java

示例3: TransactionProcessorImpl

import nxt.util.ThreadPool; //导入方法依赖的package包/类
private TransactionProcessorImpl() {
    ThreadPool.scheduleThread("ProcessTransactions", processTransactionsThread, 5);
    ThreadPool.scheduleThread("RemoveUnconfirmedTransactions", removeUnconfirmedTransactionsThread, 1);
    ThreadPool.runAfterStart(new Runnable() {
        @Override
        public void run() {
            synchronized (BlockchainImpl.getInstance()) {
                try (DbIterator<UnconfirmedTransaction> oldNonBroadcastedTransactions = getAllUnconfirmedTransactions()) {
                    for (UnconfirmedTransaction unconfirmedTransaction : oldNonBroadcastedTransactions) {
                        if (unconfirmedTransaction.getTransaction().isUnconfirmedDuplicate(unconfirmedDuplicates)) {
                            Logger.logErrorMessage("Duplicate unconfirmed transaction " + unconfirmedTransaction.getTransaction().getJSONObject().toString());
                        } else if (enableTransactionRebroadcasting) {
                            broadcastedTransactions.add(unconfirmedTransaction.getTransaction());
                        }
                    }
                }
            }
        }
    });
    if (enableTransactionRebroadcasting) {
        ThreadPool.scheduleThread("RebroadcastTransactions", rebroadcastTransactionsThread, 60);
    }
}
 
开发者ID:Ziftr,项目名称:nxt,代码行数:24,代码来源:TransactionProcessorImpl.java

示例4: BlockchainProcessorImpl

import nxt.util.ThreadPool; //导入方法依赖的package包/类
private BlockchainProcessorImpl() {

        blockListeners.addListener(new Listener<Block>() {
            @Override
            public void notify(Block block) {
                if (block.getHeight() % 5000 == 0) {
                    Logger.logDebugMessage("processed block " + block.getHeight());
                }
            }
        }, Event.BLOCK_SCANNED);

        ThreadPool.runBeforeStart(new Runnable() {
            @Override
            public void run() {
                addGenesisBlock();
                scan();
            }
        });

        ThreadPool.scheduleThread(getMoreBlocksThread, 1);

    }
 
开发者ID:aspnmy,项目名称:NasCoin,代码行数:23,代码来源:BlockchainProcessorImpl.java

示例5: BlockchainProcessorImpl

import nxt.util.ThreadPool; //导入方法依赖的package包/类
private BlockchainProcessorImpl()
{
  this.blockListeners.addListener(new Listener()
  {
    public void notify(Block paramAnonymousBlock)
    {
      if (paramAnonymousBlock.getHeight() % 5000 == 0) {
        Logger.logDebugMessage("processed block " + paramAnonymousBlock.getHeight());
      }
    }
  }, BlockchainProcessor.Event.BLOCK_SCANNED);
  



  ThreadPool.runBeforeStart(new Runnable()
  {
    public void run()
    {
      BlockchainProcessorImpl.this.addGenesisBlock();
      BlockchainProcessorImpl.this.scan();
    }
  });
  ThreadPool.scheduleThread(this.getMoreBlocksThread, 1);
}
 
开发者ID:stevedoe,项目名称:nxt-client,代码行数:26,代码来源:BlockchainProcessorImpl.java

示例6: TransactionProcessorImpl

import nxt.util.ThreadPool; //导入方法依赖的package包/类
private TransactionProcessorImpl() {
    ThreadPool.scheduleThread("ProcessTransactions", processTransactionsThread, 5);
    ThreadPool.scheduleThread("RemoveUnconfirmedTransactions", removeUnconfirmedTransactionsThread, 1);
    ThreadPool.runAfterStart(this::rebroadcastAllUnconfirmedTransactions);
    if (enableTransactionRebroadcasting) {
        ThreadPool.scheduleThread("RebroadcastTransactions", rebroadcastTransactionsThread, 60);
    }
}
 
开发者ID:BitcoinFullnode,项目名称:ROKOS-OK-Bitcoin-Fullnode,代码行数:9,代码来源:TransactionProcessorImpl.java

示例7: init

import nxt.util.ThreadPool; //导入方法依赖的package包/类
public void init() {
    ThreadPool.scheduleThread("GenerateBlocks", generateBlocksTask, 500, TimeUnit.MILLISECONDS);
}
 
开发者ID:giannisKonst,项目名称:blockchain,代码行数:4,代码来源:GeneratorPOW.java

示例8: startForging

import nxt.util.ThreadPool; //导入方法依赖的package包/类
public void startForging(Block lastBlock) {
    //TODO lastBlock
    ThreadPool.scheduleThread("GenerateBlocks", generateBlocksThread, 500, TimeUnit.MILLISECONDS);
}
 
开发者ID:giannisKonst,项目名称:blockchain,代码行数:5,代码来源:GeneratorNXT.java

示例9: BlockchainProcessorImpl

import nxt.util.ThreadPool; //导入方法依赖的package包/类
private BlockchainProcessorImpl() {
    final int trimFrequency = Nxt.getIntProperty("nxt.trimFrequency");
    blockListeners.addListener(block -> {
        if (block.getHeight() % 5000 == 0) {
            Logger.logMessage("processed block " + block.getHeight());
        }
        if (trimDerivedTables && block.getHeight() % trimFrequency == 0) {
            doTrimDerivedTables();
        }
    }, Event.BLOCK_SCANNED);

    blockListeners.addListener(block -> {
        if (trimDerivedTables && block.getHeight() % trimFrequency == 0 && !isTrimming) {
            isTrimming = true;
            networkService.submit(() -> {
                trimDerivedTables();
                isTrimming = false;
            });
        }
        if (block.getHeight() % 5000 == 0) {
            Logger.logMessage("received block " + block.getHeight());
            if (!isDownloading || block.getHeight() % 50000 == 0) {
                networkService.submit(Db.db::analyzeTables);
            }
        }
    }, Event.BLOCK_PUSHED);

    blockListeners.addListener(checksumListener, Event.BLOCK_PUSHED);

    blockListeners.addListener(block -> Db.db.analyzeTables(), Event.RESCAN_END);

    ThreadPool.runBeforeStart(() -> {
        alreadyInitialized = true;
        if (addGenesisBlock()) {
            scan(0, false);
        } else if (Nxt.getBooleanProperty("nxt.forceScan")) {
            scan(0, Nxt.getBooleanProperty("nxt.forceValidate"));
        } else {
            boolean rescan;
            boolean validate;
            int height;
            try (Connection con = Db.db.getConnection();
                 Statement stmt = con.createStatement();
                 ResultSet rs = stmt.executeQuery("SELECT * FROM scan")) {
                rs.next();
                rescan = rs.getBoolean("rescan");
                validate = rs.getBoolean("validate");
                height = rs.getInt("height");
            } catch (SQLException e) {
                throw new RuntimeException(e.toString(), e);
            }
            if (rescan) {
                scan(height, validate);
            }
        }
    }, false);

    ThreadPool.scheduleThread("GetMoreBlocks", getMoreBlocksThread, 1);

}
 
开发者ID:BitcoinFullnode,项目名称:ROKOS-OK-Bitcoin-Fullnode,代码行数:61,代码来源:BlockchainProcessorImpl.java

示例10: TransactionProcessorImpl

import nxt.util.ThreadPool; //导入方法依赖的package包/类
private TransactionProcessorImpl() {
    ThreadPool.scheduleThread(processTransactionsThread, 5);
    ThreadPool.scheduleThread(removeUnconfirmedTransactionsThread, 1);
    ThreadPool.scheduleThread(rebroadcastTransactionsThread, 60);
}
 
开发者ID:aspnmy,项目名称:NasCoin,代码行数:6,代码来源:TransactionProcessorImpl.java

示例11: TransactionProcessorImpl

import nxt.util.ThreadPool; //导入方法依赖的package包/类
private TransactionProcessorImpl()
{
  ThreadPool.scheduleThread(this.processTransactionsThread, 5);
  ThreadPool.scheduleThread(this.removeUnconfirmedTransactionsThread, 1);
  ThreadPool.scheduleThread(this.rebroadcastTransactionsThread, 60);
}
 
开发者ID:stevedoe,项目名称:nxt-client,代码行数:7,代码来源:TransactionProcessorImpl.java


注:本文中的nxt.util.ThreadPool.scheduleThread方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。