Search in sources :

Example 1 with NulsThreadFactory

use of io.nuls.kernel.thread.manager.NulsThreadFactory in project nuls by nuls-io.

the class AccountLedgerModuleBootstrap method start.

@Override
public void start() {
    this.waitForDependencyRunning(AccountConstant.MODULE_ID_ACCOUNT, ProtocolConstant.MODULE_ID_PROTOCOL);
    BalanceManager balanceManager = NulsContext.getServiceBean(BalanceManager.class);
    balanceManager.initAccountBalance();
    ScheduledThreadPoolExecutor executor = TaskManager.createScheduledThreadPool(1, new NulsThreadFactory(AccountLedgerConstant.MODULE_ID_ACCOUNTLEDGER, "CheckUnConfirmTxThread"));
    executor.scheduleAtFixedRate(NulsContext.getServiceBean(CheckUnConfirmTxThread.class), 1, 10, TimeUnit.MINUTES);
}
Also used : NulsThreadFactory(io.nuls.kernel.thread.manager.NulsThreadFactory) ScheduledThreadPoolExecutor(java.util.concurrent.ScheduledThreadPoolExecutor) BalanceManager(io.nuls.account.ledger.base.manager.BalanceManager) CheckUnConfirmTxThread(io.nuls.account.ledger.base.task.CheckUnConfirmTxThread)

Example 2 with NulsThreadFactory

use of io.nuls.kernel.thread.manager.NulsThreadFactory in project nuls by nuls-io.

the class MessageClassificationProcessor method doHandlers.

private void doHandlers(DisruptorData<ProcessData<E>> disruptorData) {
    if (null == disruptorData || disruptorData.getData() == null) {
        Log.warn("there is null data in disruptorData!");
        return;
    }
    if (disruptorData.isStoped()) {
        disruptorData.setStoped(false);
        return;
    }
    ProcessData processData = disruptorData.getData();
    Class<? extends BaseMessage> serviceId = processData.getData().getClass();
    Set<NulsMessageHandler> handlers = handlerManager.getHandlerList(serviceId);
    ThreadPoolExecutor handlerExecutor = (ThreadPoolExecutor) handlerService.get(serviceId);
    if (handlerExecutor == null) {
        handlerExecutor = TaskManager.createThreadPool(1, 1000000, new NulsThreadFactory(MessageBusConstant.MODULE_ID_MESSAGE_BUS, "disruptor-processor"));
        handlerService.put(serviceId, handlerExecutor);
    }
    for (NulsMessageHandler handler : handlers) {
        handlerExecutor.execute(new NulsMessageCall(processData, handler));
    }
}
Also used : NulsThreadFactory(io.nuls.kernel.thread.manager.NulsThreadFactory) NulsMessageCall(io.nuls.message.bus.processor.thread.NulsMessageCall) NulsMessageHandler(io.nuls.message.bus.handler.intf.NulsMessageHandler) ThreadPoolExecutor(java.util.concurrent.ThreadPoolExecutor) ProcessData(io.nuls.message.bus.model.ProcessData)

Example 3 with NulsThreadFactory

use of io.nuls.kernel.thread.manager.NulsThreadFactory in project nuls by nuls-io.

the class DispatchManager method init.

public final void init(boolean messageChecking) {
    NulsThreadFactory nulsThreadFactory = new NulsThreadFactory(ModuleService.getInstance().getModuleId(MessageBusModuleBootstrap.class), disruptorName);
    disruptorService.createDisruptor(disruptorName, MessageBusConstant.DEFAULT_RING_BUFFER_SIZE, nulsThreadFactory);
    messageProcesser = new MessageClassificationProcessor();
    disruptorService.handleEventWith(disruptorName, messageProcesser);
    disruptorService.start(disruptorName);
}
Also used : NulsThreadFactory(io.nuls.kernel.thread.manager.NulsThreadFactory) MessageClassificationProcessor(io.nuls.message.bus.processor.MessageClassificationProcessor) MessageBusModuleBootstrap(io.nuls.message.bus.module.MessageBusModuleBootstrap)

Example 4 with NulsThreadFactory

use of io.nuls.kernel.thread.manager.NulsThreadFactory in project nuls by nuls-io.

the class UtxoLedgerModuleBootstrap method start.

@Override
public void start() {
    executorService = TaskManager.createScheduledThreadPool(1, new NulsThreadFactory(LedgerConstant.MODULE_ID_LEDGER, "ledger-task-thread-pool"));
    executorService.scheduleAtFixedRate(new TotalCoinTask(), 10, 30 * 60, TimeUnit.SECONDS);
}
Also used : NulsThreadFactory(io.nuls.kernel.thread.manager.NulsThreadFactory) TotalCoinTask(io.nuls.ledger.task.TotalCoinTask)

Example 5 with NulsThreadFactory

use of io.nuls.kernel.thread.manager.NulsThreadFactory in project nuls by nuls-io.

the class UtxoAccountsModuleBootstrap method start.

@Override
public void start() {
    Log.info("start utxoAccountsModule");
    // 启动进行本地数据一致性判断与回滚
    try {
        UtxoAccountsService utxoAccountsService = NulsContext.getServiceBean(UtxoAccountsService.class);
        UtxoAccountsStorageService utxoAccountsStorageService = NulsContext.getServiceBean(UtxoAccountsStorageService.class);
        BlockService blockService = NulsContext.getServiceBean(BlockService.class);
        long hadSynBlockHeight = utxoAccountsStorageService.getHadSynBlockHeight();
        // 启动处理数据一致性
        if (!utxoAccountsService.validateIntegrityBootstrap(hadSynBlockHeight)) {
            Log.error("start utxoAccountsModule fail." + hadSynBlockHeight);
            return;
        }
    } catch (Exception e) {
        Log.error(e);
        Log.error("start utxoAccountsModule fail.");
        return;
    }
    ScheduledThreadPoolExecutor executor = TaskManager.createScheduledThreadPool(1, new NulsThreadFactory(UtxoAccountsConstant.MODULE_ID_UTXOACCOUNTS, "utxoAccountsThread"));
    executor.scheduleAtFixedRate(NulsContext.getServiceBean(UtxoAccountsThread.class), 15, 1, TimeUnit.SECONDS);
}
Also used : UtxoAccountsThread(io.nuls.utxo.accounts.task.UtxoAccountsThread) NulsThreadFactory(io.nuls.kernel.thread.manager.NulsThreadFactory) ScheduledThreadPoolExecutor(java.util.concurrent.ScheduledThreadPoolExecutor) UtxoAccountsStorageService(io.nuls.utxo.accounts.storage.service.UtxoAccountsStorageService) BlockService(io.nuls.protocol.service.BlockService) UtxoAccountsService(io.nuls.utxo.accounts.service.UtxoAccountsService)

Aggregations

NulsThreadFactory (io.nuls.kernel.thread.manager.NulsThreadFactory)8 ScheduledThreadPoolExecutor (java.util.concurrent.ScheduledThreadPoolExecutor)3 BalanceManager (io.nuls.account.ledger.base.manager.BalanceManager)1 CheckUnConfirmTxThread (io.nuls.account.ledger.base.task.CheckUnConfirmTxThread)1 CacheManager (io.nuls.consensus.poc.manager.CacheManager)1 ChainManager (io.nuls.consensus.poc.manager.ChainManager)1 OrphanBlockProvider (io.nuls.consensus.poc.provider.OrphanBlockProvider)1 NulsRuntimeException (io.nuls.kernel.exception.NulsRuntimeException)1 TotalCoinTask (io.nuls.ledger.task.TotalCoinTask)1 NulsMessageHandler (io.nuls.message.bus.handler.intf.NulsMessageHandler)1 ProcessData (io.nuls.message.bus.model.ProcessData)1 MessageBusModuleBootstrap (io.nuls.message.bus.module.MessageBusModuleBootstrap)1 MessageClassificationProcessor (io.nuls.message.bus.processor.MessageClassificationProcessor)1 NulsMessageCall (io.nuls.message.bus.processor.thread.NulsMessageCall)1 NettyServer (io.nuls.network.netty.conn.NettyServer)1 RunOnceAfterStartupTask (io.nuls.network.netty.task.RunOnceAfterStartupTask)1 BlockService (io.nuls.protocol.service.BlockService)1 UtxoAccountsService (io.nuls.utxo.accounts.service.UtxoAccountsService)1 UtxoAccountsStorageService (io.nuls.utxo.accounts.storage.service.UtxoAccountsStorageService)1 UtxoAccountsThread (io.nuls.utxo.accounts.task.UtxoAccountsThread)1