Search in sources :

Example 1 with RunOnceAfterStartupTask

use of io.nuls.network.netty.task.RunOnceAfterStartupTask in project nuls by nuls-io.

the class NettyNetworkModuleBootstrap method start.

@Override
public void start() {
    this.waitForDependencyRunning(DBConstant.MODULE_ID_DB, ProtocolConstant.MODULE_ID_PROTOCOL);
    nodeManager.loadDatas();
    nettyServer = new NettyServer(networkParam.getPort());
    nettyServer.startAsSync();
    // 占用线程最多的应该是失败节点的探测,其它任务有2个线程完全够处理了,所以这里设置总线程数为3
    executorService = TaskManager.createScheduledThreadPool(3, new NulsThreadFactory(ProtocolConstant.MODULE_ID_PROTOCOL, "network-task-thread-pool"));
    executorService.scheduleAtFixedRate(new NodeMaintenanceTask(), 1000L, 5000L, TimeUnit.MILLISECONDS);
    executorService.scheduleAtFixedRate(new GetNodeVersionTask(), 2000L, 3000L, TimeUnit.MILLISECONDS);
    executorService.scheduleAtFixedRate(new SaveNodeInfoTask(), 1, 5, TimeUnit.MINUTES);
    executorService.scheduleAtFixedRate(new NodeDiscoverTask(), 3000L, 10000L, TimeUnit.MILLISECONDS);
    TaskManager.createAndRunThread(ProtocolConstant.MODULE_ID_PROTOCOL, "share-mine-node", new RunOnceAfterStartupTask());
// PlatformDepedentReporter reporter = new PlatformDepedentReporter();
// reporter.init();
// reporter.start();
}
Also used : NulsThreadFactory(io.nuls.kernel.thread.manager.NulsThreadFactory) RunOnceAfterStartupTask(io.nuls.network.netty.task.RunOnceAfterStartupTask) NettyServer(io.nuls.network.netty.conn.NettyServer)

Aggregations

NulsThreadFactory (io.nuls.kernel.thread.manager.NulsThreadFactory)1 NettyServer (io.nuls.network.netty.conn.NettyServer)1 RunOnceAfterStartupTask (io.nuls.network.netty.task.RunOnceAfterStartupTask)1