Распределённый алгоритм генерации ID, на данный момент существует только алгоритм snowflake от Twitter.
При каждом вызове native метода во время получения системного времени возникают определённые проблемы с производительностью. Чтобы решить эту проблему, можно обновлять это время в фоновом режиме и при вызове считывать миллисекунды из памяти.
/**
* Возвращает текущее время в миллисекундах. Обратите внимание, что хотя единицей измерения возвращаемого значения является миллисекунда, детализация значения зависит от базовой операционной системы и может быть больше. Например, многие операционные системы измеряют время в десятках миллисекунд.
*
* <p> См. описание класса <code>Date</code> для обсуждения небольших расхождений, которые могут возникнуть между «компьютерным временем» и всемирным временем (UTC).
*
* @return разница, измеренная в миллисекундах, между текущим временем и полночью 1 января 1970 года по UTC.
* @see java.util.Date
*/
public static native long currentTimeMillis();
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )