public static long getJVMLongOption( String[] options, String prefix ) { long value = -1; for ( String option: options ){ try{ if ( option.startsWith( prefix )){ String val = option.substring( prefix.length()); value = decodeJVMLong( val ); } }catch( Throwable e ){ Debug.out( "Failed to process option '" + option + "'", e ); } } return( value ); }
public static void dumpThreads() { AEJavaManagement.dumpThreads(); }
public static String[] setJVMLongOption( String[] options, String prefix, long val ) { String new_option = prefix + encodeJVMLong( val ); for (int i=0;i<options.length;i++){ String option = options[i]; if ( option.startsWith( prefix )){ options[i] = new_option; new_option = null; } } if ( new_option != null ){ String[] new_options = new String[options.length+1]; System.arraycopy( options, 0, new_options, 0, options.length ); new_options[options.length] = new_option; options = new_options; } return( options ); }
options = AEJavaManagement.setJVMLongOption( options, "-Xmx", max_mem ); long min_mem = AEJavaManagement.getJVMLongOption( options, "-Xms" ); options = AEJavaManagement.setJVMLongOption( options, "-Xms", max_mem );
long max_mem = AEJavaManagement.getJVMLongOption( options, "-Xmx" ); label.setLayoutData(gridData); Long max_heap_mb = AEJavaManagement.getMaxHeapMB(); long min_mem = AEJavaManagement.getJVMLongOption( options, "-Xms" ); long max_direct = AEJavaManagement.getJVMLongOption( options, OPTION_KEY );
options = AEJavaManagement.setJVMLongOption( options, OPTION_KEY, max_direct );
protected void runIt( AERunnable runnable ) { if ( log_cpu ){ long start_cpu = log_cpu?AEJavaManagement.getThreadCPUTime():0; long start_time = SystemTime.getHighPrecisionCounter(); runnable.run(); if ( start_cpu > 0 ){ long end_cpu = log_cpu?AEJavaManagement.getThreadCPUTime():0; long diff_cpu = ( end_cpu - start_cpu ) / 1000000; long end_time = SystemTime.getHighPrecisionCounter(); long diff_millis = ( end_time - start_time ) / 1000000; if ( diff_cpu > 10 || diff_millis > 10){ System.out.println( TimeFormatter.milliStamp() + ": Thread: " + Thread.currentThread().getName() + ": " + runnable + " -> " + diff_cpu + "/" + diff_millis ); } } }else{ runnable.run(); } }
AEJavaManagement.initialise();
options = AEJavaManagement.setJVMLongOption( options, "-Xms", min_mem ); long max_mem = AEJavaManagement.getJVMLongOption( options, "-Xmx" ); options = AEJavaManagement.setJVMLongOption( options, "-Xmx", min_mem );
String[] options = platform.getExplicitVMOptions(); long max_mem = AEJavaManagement.getJVMLongOption( options, "-Xmx" ); options = AEJavaManagement.setJVMLongOption( options, "-Xmx", max_mem );