From 416e1434e7ee312127e491b21b1938fe0a10636d Mon Sep 17 00:00:00 2001 From: CodingCat Date: Fri, 4 Mar 2016 10:55:02 -0500 Subject: [PATCH] change initTracker() to static --- .../main/java/ml/dmlc/xgboost4j/RabitTracker.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/RabitTracker.java b/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/RabitTracker.java index 1f1c70251..99adcb7e5 100644 --- a/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/RabitTracker.java +++ b/jvm-packages/xgboost4j/src/main/java/ml/dmlc/xgboost4j/RabitTracker.java @@ -24,6 +24,15 @@ public class RabitTracker { private int num_workers; private AtomicReference trackerProcess = new AtomicReference(); + static { + try { + initTrackerPy(); + } catch (IOException ex) { + logger.error("load tracker library failed."); + logger.error(ex); + } + } + /** * Tracker logger that logs output from tracker. */ @@ -44,7 +53,7 @@ public class RabitTracker { } } - private void initTrackerPy() throws IOException { + private static void initTrackerPy() throws IOException { try { tracker_py = NativeLibLoader.createTempFileFromResource("/tracker.py"); } catch (IOException ioe) { @@ -90,7 +99,6 @@ public class RabitTracker { private boolean startTrackerProcess() { try { - initTrackerPy(); trackerProcess.set(Runtime.getRuntime().exec("python " + tracker_py + " --num-workers=" + String.valueOf(num_workers))); loadEnvs(trackerProcess.get().getInputStream());