Для измерения времени в микросекундах вам необходимо использовать функцию System.nanoTime (), которая будет возвращать время в микросекундах на основе наиболее точных часов, доступных вашей системе.
Для пользователя это действует почти так же, как System.currentTimeMilis () для миллисекунд, вы просто определяете время начала и окончания, а затем сводите на нет разницу, чтобы узнать, сколько времени заняло действие. Например:
long startTime = System.nanoTime();
//Do some kind of processing;
//loop, IO, whatever you want to measure
long endTime = System.nanoTime();
long elapsedTime = endTime - startTime;
Последний бит может быть закорочен, для простоты я оставил его подробным:
long elapsedTime = System.nanoTime() - startTime;
Это не должно использоваться для измерения реального времени, поскольку оно имеет очень мало значения или гарантирует, что оно даже сравнимо с ним. Вся вышеупомянутая информация доступна из документации API Java для System .