Android java runtime class

Runtime Class

Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

Every Java application has a single instance of class Runtime that allows the application to interface with the environment in which the application is running.

[Android.Runtime.Register("java/lang/Runtime", DoNotGenerateAcw=true)] public class Runtime : Java.Lang.Object
[] type Runtime = class inherit Object

Remarks

Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.

Constructors

A constructor used when creating managed representations of JNI objects; called by the runtime.

Properties

Returns the runtime class of this Object .

The handle to the underlying Android instance.

This API supports the Mono for Android infrastructure and is not intended to be used directly from your code.

This API supports the Mono for Android infrastructure and is not intended to be used directly from your code.

Methods

Registers a new virtual-machine shutdown hook.

Returns the number of processors available to the Java virtual machine.

Creates and returns a copy of this object.

Indicates whether some other object is «equal to» this one.

Executes the specified string command in a separate process.

Executes the specified string command in a separate process with the specified environment.

Executes the specified string command in a separate process with the specified environment and working directory.

Executes the specified command and arguments in a separate process.

Executes the specified command and arguments in a separate process with the specified environment.

Executes the specified command and arguments in a separate process with the specified environment and working directory.

Terminates the currently running Java virtual machine by initiating its shutdown sequence.

Returns the amount of free memory in the Java Virtual Machine.

Runs the garbage collector.

Returns a hash code value for the object.

Creates a localized version of an input stream.

Creates a localized version of an output stream.

Returns the runtime object associated with the current Java application.

Forcibly terminates the currently running Java virtual machine.

Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.

Loads the native library specified by the filename argument.

Loads the native library specified by the libname argument.

Returns the maximum amount of memory that the Java virtual machine will attempt to use.

Wakes up a single thread that is waiting on this object’s monitor.

Wakes up all threads that are waiting on this object’s monitor.

De-registers a previously-registered virtual-machine shutdown hook.

Runs the finalization methods of any objects pending finalization.

Enable or disable finalization on exit; doing so specifies that the finalizers of all objects that have finalizers that have not yet been automatically invoked are to be run before the Java runtime exits.

Returns a string representation of the object.

Returns the total amount of memory in the Java virtual machine.

Enables/Disables tracing of instructions.

Enables/Disables tracing of method calls.

Causes the current thread to wait until another thread invokes the java.lang.Object#notify() method or the java.lang.Object#notifyAll() method for this object.

Causes the current thread to wait until either another thread invokes the java.lang.Object#notify() method or the java.lang.Object#notifyAll() method for this object, or a specified amount of time has elapsed.

Causes the current thread to wait until another thread invokes the java.lang.Object#notify() method or the java.lang.Object#notifyAll() method for this object, or some other thread interrupts the current thread, or a certain amount of real time has elapsed.

Explicit Interface Implementations

IJavaPeerable.Disposed() (Inherited from Object)
IJavaPeerable.DisposeUnlessReferenced() (Inherited from Object)
IJavaPeerable.Finalized() (Inherited from Object)
IJavaPeerable.JniManagedPeerState (Inherited from Object)
IJavaPeerable.SetJniIdentityHashCode(Int32) (Inherited from Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) (Inherited from Object)
IJavaPeerable.SetPeerReference(JniObjectReference) (Inherited from Object)

Extension Methods

Performs an Android runtime-checked type conversion.

Источник

Русские Блоги

Класс Runtime инкапсулирует среду выполнения. Каждое Java-приложение имеет экземпляр класса Runtime, позволяющий приложению подключаться к среде, в которой оно выполняется.

Мы не можем создать экземпляр объекта Runtime, а приложение не может создать собственный экземпляр класса Runtime, но мы можем получить ссылку на текущий объект Runtime через метод getRuntime. Как только вы получите ссылку на текущий объект Runtime, вы можете вызвать метод объекта Runtime дляУправление состоянием и поведением виртуальной машины Java

Когда апплеты и другой ненадежный код вызывают какие-либо методы времени выполнения, это часто вызывает исключение SecurityException.

Пример метода API

Давайте посмотрим на несколько нативных методов:

public native int availableProcessors(); public native long freeMemory(); public native long totalMemory(); public native long maxMemory();

Примеры использования следующие:

Runtime rt = Runtime.getRuntime(); System.out.println ("Количество процессоров:" + rt.availableProcessors ()); // Количество процессоров: 4 System.out.println ("Количество свободной памяти:" + rt.freeMemory () / 1024/1024 + "МБ"); // Количество свободной памяти: 111 МБ System.out.println ("Общий объем памяти:" + rt.totalMemory () / 1024/1024 + "МБ"); // Общий объем памяти: 120 МБ System.out.println ("Максимально доступная память:" + rt.maxMemory () / 1024/1024 + "mb"); // Максимально доступная память: 1910 МБ

Используйте сценарий:
С помощью методов totalMemory () и freeMemory () вы можете узнатьКуча памятиНасколько он велик и сколько осталось.

Java периодически перерабатывает мусорные объекты (неиспользуемые объекты), чтобы освободить пространство памяти. Но если вы хотите собрать отброшенные объекты до следующего указанного цикла сборщика, вы можете запустить сборщик мусора по мере необходимости, вызвав метод gc (). Хороший метод тестирования — вызвать метод gc (), затем вызвать метод freeMemory (), чтобы проверить основное использование памяти, затем выполнить код и затем снова вызвать метод freeMemory (), чтобы увидеть, сколько памяти выделено.

  • метод version () (начиная с Java9)
    java9t предоставляет метод Version, который может помочь нам легко получить информацию о параметрах во время выполнения, что можно назвать очень удобным для пользователя. Мы смотрим на исходный код этого метода:
public static Version version() < if (version == null) < version = new Version(VersionProps.versionNumbers(), VersionProps.pre(), VersionProps.build(), VersionProps.optional()); >return version; >

Мы обнаружили, что все параметры взяты из VersionProps, поэтому мы разместили часть его исходного кода, всем будет понятно

class VersionProps < private static final String launcher_name = "java"; private static final String java_version = "10.0.2"; private static final String java_version_date = "2018-07-17"; private static final String java_runtime_name = "Java(TM) SE Runtime Environment"; private static final String java_runtime_version = "10.0.2+13"; private static final String VERSION_NUMBER = "10.0.2"; private static final String VERSION_BUILD = "13"; private static final String VERSION_PRE = ""; private static final String VERSION_OPT = ""; private static final boolean isLTS = "".startsWith("LTS"); private static final String VENDOR_VERSION_STRING = "18.3"; private static final String vendor_version = (VENDOR_VERSION_STRING.length() >0 ? " " + VENDOR_VERSION_STRING : ""); static < init(); >>

Поскольку моя версия JDK — Java10, ваши параметры могут не совпадать с моими. Я запускаю это следующим образом:

System.out.println(Runtime.version()); //10.0.2+13

Выполните другие процедуры

В безопасной среде это может быть в многозадачной операционной системеИспользуйте Java для выполнения других особенно крупных процессов(То есть программа). Метод ecec () имеет несколько форм для именования программы, которую вы хотите запустить, и ее входных параметров. Метод ecec () возвращает объект Process, который можно использовать для управления взаимодействием между программой Java и вновь запущенным процессом. Метод ecec () существенно зависит от среды.

 public static void main(String[] args) throws IOException < Runtime rt = Runtime.getRuntime(); //rt.exec("notepad.exe "); // Открыть блокнот Замечания: .exe можно не указывать Process process = rt.exec ("calc.exe"); // Открыть калькулятор System.out.println(process); //Process[pid=8108, exitValue="not exited"] >

После запуска новой программы вы можете использовать метод Process. Вы можете использовать метод destroy (), чтобы убить дочерний процесс,Вы также можете использовать метод waitFor (), чтобы дождаться окончания программы., Метод exitValue () возвращает значение, возвращаемое в конце дочернего процесса. Если ошибки нет, она вернет 0, иначе вернет ненулевое значение.

public static void main(String[] args) throws IOException, InterruptedException < Runtime rt = Runtime.getRuntime(); Process process = rt.exec ("notepad.exe"); // Открыть блокнот. Примечание. .Exe можно не указывать // Process process = rt.exec ("calc.exe"); // Открыть калькулятор process.waitFor (); // Блокировать до завершения выполнения дочернего процесса System.out.println («Выполнение слова выполнено ~~~»); process.destroyForcbly (); // Принудительно уничтожить дочерний процесс destroy >Результат операции: (Когда вы закрываете Блокнот, он запускает программу и печатает информацию)

Методы, связанные с Gc

  • exit(int status)
    • При запуске последовательности выключения виртуальной машины работающая в данный момент виртуальная машина Java завершается.
    • Запустите сборщик мусора.
    • Принудительное завершение работающей в данный момент виртуальной машины Java.

    загрузить и загрузить библиотеку

    Эти два метода являются очень важной функцией, которую мы будем использовать при использовании механизма JNI в Java, функция которого заключается в загрузке библиотеки, которая реализует собственный метод, который мы объявили в коде Java, или загрузке других Библиотека динамических ссылок

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

    Источник

    Java.lang.Runtime Class

    Класс java.lang.Runtime позволяет приложению взаимодействовать со средой, в которой оно запущено.

    Декларация класса

    Ниже приводится объявление для класса java.lang.Runtime.

    public class Runtime extends Object

    Методы класса

    Этот метод регистрирует новый хук отключения виртуальной машины.

    Этот метод возвращает число процессоров, доступных виртуальной машине Java.

    Этот метод выполняет указанную строковую команду в отдельном процессе.

    Этот метод выполняет указанную команду и аргументы в отдельном процессе.

    Этот метод выполняет указанную команду и аргументы в отдельном процессе с указанной средой.

    Этот метод выполняет указанную команду и аргументы в отдельном процессе с указанной средой и рабочим каталогом.

    Этот метод выполняет указанную строковую команду в отдельном процессе с указанной средой.

    Этот метод выполняет указанную строковую команду в отдельном процессе с указанной средой и рабочим каталогом.

    Этот метод завершает работающую в настоящее время виртуальную машину Java, инициируя ее последовательность выключения.

    Этот метод возвращает количество свободной памяти в виртуальной машине Java.

    Этот метод запускает сборщик мусора.

    Этот метод возвращает объект времени выполнения, связанный с текущим приложением Java.

    Этот метод принудительно завершает текущую виртуальную машину Java.

    Этот метод загружает указанное имя файла в виде динамической библиотеки.

    Этот метод загружает динамическую библиотеку с указанным именем библиотеки.

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

    Этот метод отменяет регистрацию ранее зарегистрированной ловушки отключения виртуальной машины.

    Этот метод запускает методы завершения любых объектов, ожидающих завершения.

    Этот метод возвращает общий объем памяти в виртуальной машине Java.

    Этот метод включает / отключает отслеживание инструкций.

    Этот метод включает / отключает отслеживание вызовов методов.

    Этот метод регистрирует новый хук отключения виртуальной машины.

    Этот метод возвращает число процессоров, доступных виртуальной машине Java.

    Этот метод выполняет указанную строковую команду в отдельном процессе.

    Этот метод выполняет указанную команду и аргументы в отдельном процессе.

    Этот метод выполняет указанную команду и аргументы в отдельном процессе с указанной средой.

    Этот метод выполняет указанную команду и аргументы в отдельном процессе с указанной средой и рабочим каталогом.

    Этот метод выполняет указанную строковую команду в отдельном процессе с указанной средой.

    Этот метод выполняет указанную строковую команду в отдельном процессе с указанной средой и рабочим каталогом.

    Этот метод завершает работающую в настоящее время виртуальную машину Java, инициируя ее последовательность выключения.

    Этот метод возвращает количество свободной памяти в виртуальной машине Java.

    Этот метод запускает сборщик мусора.

    Этот метод возвращает объект времени выполнения, связанный с текущим приложением Java.

    Этот метод принудительно завершает текущую виртуальную машину Java.

    Этот метод загружает указанное имя файла в виде динамической библиотеки.

    Этот метод загружает динамическую библиотеку с указанным именем библиотеки.

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

    Этот метод отменяет регистрацию ранее зарегистрированной ловушки отключения виртуальной машины.

    Этот метод запускает методы завершения любых объектов, ожидающих завершения.

    Этот метод возвращает общий объем памяти в виртуальной машине Java.

    Этот метод включает / отключает отслеживание инструкций.

    Этот метод включает / отключает отслеживание вызовов методов.

    Методы унаследованы

    Этот класс наследует методы от следующих классов –

    Источник

    Читайте также:  Примеры использования pdo php
Оцените статью