我们经常使用 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();
问题是:这是平常的时间吗?我们预计本地机器上的毫秒数。