Как сохранить System.currentTimeMillis() в массиве с помощью симулятора времени ожидания

#latency #hdrhistogram

#задержка #hdrhistogram

Вопрос:

Я пытаюсь сохранить время в миллисекундах для каждого времени выполнения этого времени. И затем я хотел бы использовать HdrHistogram для представления задержки.

Однако я не могу сохранить время в своем массиве. Пожалуйста, не могли бы вы оказать какую-либо помощь?

 public class PracticeLatency1
{
 public static void main(String [] args)
{
int[] startTimes;
long startTime;
int index=0;

 startTimes = new int[10000];
 startTime = System.currentTimeMillis();
 runCalculations();
 startTimes[index  ] = (int) (System.currentTimeMillis() - startTime);
 System.out.println(startTimes);
}
   /**
    * Run the practice calculations
    */
   // System.currentTimeMillis()
    private static void runCalculations()
    {
    // Create a random park time simulator
    BaseSyncOpSimulator syncOpSimulator = new SyncOpSimulRndPark(TimeUnit.NANOSECONDS.toNanos(100), 
    TimeUnit.MICROSECONDS.toNanos(100));

    // Execute the operation lot of times
    for(int i = 0; i < 10000; i  )
    {
        syncOpSimulator.executeOp();
        
    }  
     
    // TODO Show the percentile distribution of the latency calculation of each executeOp call

    }
     }
  

Комментарии:

1. Вы устанавливаете свой startTimes массив в null . Как вы ожидаете, что сможете добавлять какие-либо значения? Вы знаете, сколько значений вы хотите добавить? Затем вам нужно инициализировать свой массив startTimes = new int[1000] (или любым другим размером, который вам нужен)

2. Ваш startTimes не инициализирован, и у вас должен быть цикл для установки startTimes .

3. спасибо за ваши ответы !!. Я думаю, что теперь я инициализировал StartTimes до 10.000, что соответствует количеству раз, когда будет выполняться функция времени стоянки. Но как мне добавить цикл, если в функции времени ожидания уже есть цикл?

4. спасибо @haoyuwang, как я могу добавить цикл? потому что теперь мой массив выглядит так: [522,0,0,0,0 …]