Java 在hazelcast中启动任务持续时间>;有时2秒

Java 在hazelcast中启动任务持续时间>;有时2秒,java,execution,hazelcast,Java,Execution,Hazelcast,我们经常使用Hazelcast分布式任务,并且意识到,有时仅仅启动一个任务就持续>2秒,甚至在任务本身执行之前。我们是在一台机器上完成的;也就是说,没有网络开销。执行的任务本身在其call()方法中只有一行代码(我们在开始和结束处放置了一个System.currentTimeMillis()),在其构造函数调用中存储传递的参数“client”——其他什么都没有 任务按如下方式启动: FutureTask<Member> task = new DistributedTask<Me

我们经常使用Hazelcast分布式任务,并且意识到,有时仅仅启动一个任务就持续>2秒,甚至在任务本身执行之前。我们是在一台机器上完成的;也就是说,没有网络开销。执行的任务本身在其call()方法中只有一行代码(我们在开始和结束处放置了一个System.currentTimeMillis()),在其构造函数调用中存储传递的参数“client”——其他什么都没有

任务按如下方式启动:

FutureTask<Member> task = new DistributedTask<Member>(new NotifyWaitingClientTask(client),
            theId);
    ExecutorService executorService = hazelcastInstance.getExecutorService();
    executorService.execute(task);
...
task.get();
FutureTask任务=新的分布式任务(新的NotifyWaitingClientTask(客户端),
theId);
ExecutorService ExecutorService=hazelcastInstance.getExecutorService();
executorService.execute(任务);
...
task.get();

问题是:这是一个正常的时间吗?在本地计算机上,我们预计会有相当多的毫秒。

这是不正常的,除非您有两个太多的任务需要花费太多时间,并且执行器线程已经被占用。因此,直到有一个可用的线程可以执行,并且您将看到延迟,任务才会启动

如果不是这样的话,你能想出我们可以运行和重现问题的代码吗

福阿德


Hazelcast

在Hazelcast.xml中增加这些螺纹尺寸帮助很大!谢谢