Поделиться через


SystemClock Класс

Определение

Основные средства хранения времени.

[Android.Runtime.Register("android/os/SystemClock", DoNotGenerateAcw=true)]
public sealed class SystemClock : Java.Lang.Object
[<Android.Runtime.Register("android/os/SystemClock", DoNotGenerateAcw=true)>]
type SystemClock = class
    inherit Object
Наследование
SystemClock
Атрибуты

Комментарии

Основные средства хранения времени.

Доступны три разных часа, и их не следует путать:

<ul><li>

System#currentTimeMillis System.currentTimeMillis() — это стандартные "стены" часы (время и дата) выражения миллисекунд с эпохи. Стенные часы можно задать пользователем или телефонной сетью (см #setCurrentTimeMillis.), поэтому время может перепрыгнуть назад или вперед непредсказуемо. Эти часы следует использовать только в том случае, если важно соответствие с реальными датами и временем, например в приложении календаря или будильника. Интервал или истекшее время измерения времени должны использовать разные часы. Если вы используете System.currentTimeMillis(), рассмотрите возможность прослушивания android.content.Intent#ACTION_TIME_TICK ACTION_TIME_TICKandroid.content.Intent#ACTION_TIME_CHANGED ACTION_TIME_CHANGED и android.content.Intent#ACTION_TIMEZONE_CHANGED ACTION_TIMEZONE_CHANGEDandroid.content.Intent Intent трансляций, чтобы узнать время изменения времени.

<Литий>

#uptimeMillis учитывается в миллисекундах, так как система была загружена. Эти часы останавливаются, когда система входит в глубокий спящий режим (ЦП, отображение темного, устройства, ожидающее внешних входных данных), но не влияет на масштабирование часов, бездействие или другие механизмы экономии питания. Это основа для большинства интервалов времени, таких как Thread#sleep(long) Thread.sleep(millls), Object#wait(long) Object.wait(millis)и System#nanoTime System.nanoTime(). Эти часы гарантированно будут монотонными и подходят для интервала времени, когда интервал не охватывает спящий режим устройства. Большинство методов, которые принимают значение метки времени, в настоящее время ожидают #uptimeMillis часы.

<Литий>

#elapsedRealtime и #elapsedRealtimeNanos возврат времени загрузки системы и включение глубокого сна. Эти часы гарантированно будут монотонными и продолжают тикать, даже если ЦП находится в режимах экономии питания, поэтому рекомендуется использовать время интервала общего назначения.

</ul>

Существует несколько механизмов управления временем событий:

<ul><li>

Стандартные функции, такие как Thread#sleep(long) Thread.sleep(millis) и Object#wait(long) Object.wait(millis) всегда доступны. Эти функции используют #uptimeMillis часы; если устройство входит в спящий режим, оставшаяся часть времени будет отложена до пробуждения устройства. Эти синхронные функции могут быть прерваны с Thread#interrupt Thread.interrupt()помощью , и необходимо обработать InterruptedException.

<Литий>

#sleep SystemClock.sleep(millis) — это служебная функция, очень похожая на Thread#sleep(long) Thread.sleep(millis)функцию, но она игнорирует InterruptedException. Используйте эту функцию для задержек, если не используется Thread#interrupt Thread.interrupt(), так как она сохранит прерванное состояние потока.

<Литий>

Класс android.os.Handler может запланировать асинхронные обратные вызовы в абсолютное или относительное время. Объекты обработчика также используют #uptimeMillis часы и требуют (обычно присутствуют android.os.Looper event loop в любом приложении графического интерфейса).

<Литий>

Это android.app.AlarmManager может активировать однократные или повторяющиеся события, которые происходят, даже если устройство находится в глубоком спящий режиме или приложение не работает. События могут быть запланированы с выбранным вариантом java.lang.System#currentTimeMillis (RTC) или #elapsedRealtime (ELAPSED_REALTIME), а также вызывать трансляцию android.content.Intent при их возникновении. </ul>

Документация по Java для android.os.SystemClock.

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

Свойства

Class

Возвращает класс среды выполнения этого Objectобъекта.

(Унаследовано от Object)
Handle

Дескриптор базового экземпляра Android.

(Унаследовано от Object)
JniIdentityHashCode

Основные средства хранения времени.

(Унаследовано от Object)
JniPeerMembers

Основные средства хранения времени.

PeerReference

Основные средства хранения времени.

(Унаследовано от Object)
ThresholdClass

Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода.

(Унаследовано от Object)
ThresholdType

Этот API поддерживает инфраструктуру Mono для Android и не предназначен для использования непосредственно из кода.

(Унаследовано от Object)

Методы

Clone()

Создает и возвращает копию этого объекта.

(Унаследовано от Object)
CurrentGnssTimeClock()

Возвращает значение Clock , которое начинается с 1 января 1970 г. 00:00:00.

CurrentNetworkTimeClock()

Возвращает значение Clock , которое начинается с 1 января 1970 г. 00:00:00.

CurrentThreadTimeMillis()

Возвращает миллисекунда, запущенные в текущем потоке.

Dispose()

Основные средства хранения времени.

(Унаследовано от Object)
Dispose(Boolean)

Основные средства хранения времени.

(Унаследовано от Object)
ElapsedRealtime()

Возвращает миллисекунда с момента загрузки, включая время, затраченное на спящий режим.

ElapsedRealtimeNanos()

Возвращает nanoseconds с момента загрузки, в том числе время, затраченное на спящий режим.

Equals(Object)

Указывает, равен ли другой объект этому объекту.

(Унаследовано от Object)
GetHashCode()

Возвращает значение хэш-кода для объекта.

(Унаследовано от Object)
JavaFinalize()

Вызывается сборщиком мусора в объекте, когда сборка мусора определяет, что больше ссылок на объект нет.

(Унаследовано от Object)
Notify()

Пробуждение одного потока, ожидающего монитора этого объекта.

(Унаследовано от Object)
NotifyAll()

Просыпает все потоки, ожидающие монитора этого объекта.

(Унаследовано от Object)
SetCurrentTimeMillis(Int64)

Задает текущее время стены в миллисекундах.

SetHandle(IntPtr, JniHandleOwnership)

Задает свойство Handle.

(Унаследовано от Object)
Sleep(Int64)

Ожидает заданного числа миллисекунда (из uptimeMillis) перед возвратом.

ToArray<T>()

Основные средства хранения времени.

(Унаследовано от Object)
ToString()

Возвращает строковое представление объекта.

(Унаследовано от Object)
UnregisterFromRuntime()

Основные средства хранения времени.

(Унаследовано от Object)
UptimeMillis()

Возвращает миллисекунда с момента загрузки, не отсчитывая время, затраченное на глубокий сон.

Wait()

Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>помощи уведомления</em> или <эм>прерванного</em>.

(Унаследовано от Object)
Wait(Int64)

Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>получении уведомления</>em или <>эм прервано< или> до тех пор, пока не истекло определенное количество реального времени.

(Унаследовано от Object)
Wait(Int64, Int32)

Приводит к тому, что текущий поток будет ждать, пока он не проснется, как правило, при <>получении уведомления</>em или <>эм прервано< или> до тех пор, пока не истекло определенное количество реального времени.

(Унаследовано от Object)

Явные реализации интерфейса

IJavaPeerable.Disposed()

Основные средства хранения времени.

(Унаследовано от Object)
IJavaPeerable.DisposeUnlessReferenced()

Основные средства хранения времени.

(Унаследовано от Object)
IJavaPeerable.Finalized()

Основные средства хранения времени.

(Унаследовано от Object)
IJavaPeerable.JniManagedPeerState

Основные средства хранения времени.

(Унаследовано от Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Основные средства хранения времени.

(Унаследовано от Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Основные средства хранения времени.

(Унаследовано от Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Основные средства хранения времени.

(Унаследовано от Object)

Методы расширения

JavaCast<TResult>(IJavaObject)

Выполняет преобразование типа, проверяемого средой выполнения Android.

JavaCast<TResult>(IJavaObject)

Основные средства хранения времени.

GetJniTypeName(IJavaPeerable)

Основные средства хранения времени.

Применяется к