NodeRunner node1 = new NodeRunner(js1);
NodeRunner node2 = new NodeRunner(js2);
String[] output1 = null, output2 = null;
try {
// set the timeout to maxASTSize milliseconds
List<Future<String[]>> futures = executor.invokeAll(
Lists.newArrayList(node1, node2), maxASTSize, TimeUnit.MILLISECONDS);
Future<String[]> future1 = futures.get(0);
if (!future1.isCancelled()) {
output1 = future1.get();