У меня есть эта проблема, и я не могу понять, как ее решить.
Мне нужно измерить время, необходимое для выполнения определенной функции.Хорошо, функция секундомера, которая измеряет время в миллисекундах, была недостаточно хороша, поэтому я использовал измерение в наносекундах.
Проблема в том, что функция заканчивается так быстро, что даже секундомер за нано секунды не может ее измерить.
Я знаю, что секундомер работает, потому что я пытался вставить, например, Thread.sleep(1)
в свою функцию (Thread.sleep в миллисекундах), и я получаю свое время, но без Thread.sleep
мое время всегда0. Есть идеи?
Вот мой код:
long startTimeLocalNS=0;
long stopTimeLocalNS = 0;
startTimeLocalNS = System.nanoTime();
if (something)
{
/*my Code;*/
}
stopTimeLocalNS = System.nanoTime();
disconnectTime = (stopTimeLocalNS - startTimeLocalNS);