MemoryBudgetInfo Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Información de presupuesto de memoria para una aplicación.
[Android.Runtime.Register("android/content/pm/MemoryBudgetInfo", ApiSince=37, DoNotGenerateAcw=true)]
public sealed class MemoryBudgetInfo : Java.Lang.Object, Android.OS.IParcelable, IDisposable
[<Android.Runtime.Register("android/content/pm/MemoryBudgetInfo", ApiSince=37, DoNotGenerateAcw=true)>]
type MemoryBudgetInfo = class
inherit Object
interface IParcelable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- Herencia
- Atributos
- Implementaciones
Comentarios
Información de presupuesto de memoria para una aplicación. Las entradas MemoryBudgetInfo se recuperan de entradas de <presupuesto> de memoria en el manifiesto de una aplicación y se pueden obtener a través de PackageManager.getMemoryBudgets.
MemoryBudgetInfo que se declara en el manifiesto de Android establece un límite máximo en la memoria disponible para el paquete o en un proceso dentro del paquete. Las declaraciones MemoryBudgetInfo pueden aparecer en el nivel de aplicación y en el nivel de proceso. Los dos son independientes y ninguno invalida al otro. Sin embargo, en la práctica, el presupuesto más pequeño domina.
Cada MemoryBudgetInfo tiene un estado y una característica; estos dos atributos determinan si y cuándo se aplica MemoryBudgetInfo.
El estado es el estado operativo del proceso o la aplicación, y es uno de primer plano, Perceptible o Background.
La característica selecciona para el factor de forma del dispositivo y es una de las opciones Sin especificar, TV, Automático y Inspección.
MemoryBudgetInfo es aplicable a un proceso si su característica no está especificada o si su característica coincide con el factor de forma del dispositivo. MemoryBudgetInfo se aplica a un proceso si es aplicable al proceso y el estado MemoryBudgetInfo es menor o igual que el estado operativo del proceso. Las aplicaciones también tienen el estado , que es aproximadamente el estado más bajo de cualquier proceso que se ejecuta en la aplicación.
MemoryBudgetInfo declara un límite superior en la cantidad de memoria que puede usar el proceso o la aplicación. El límite superior se calcula a partir de tres factores:
maxMb es una cantidad de memoria de línea base, expresada en MiB. Esto debe ser positivo.
additionalBytesPerPixel es un factor de escalado: bytes por píxel de pantalla. Debe ser distinto de negativo y el valor predeterminado es cero.
additionalMbPerDensity es un factor de escalado: densidad de visualización de miB veces. Debe ser distinto de negativo y el valor predeterminado es cero.
El límite real se calcula como el valor maxMb más los factores de escala aplicados a la pantalla predeterminada del dispositivo.
Si un proceso RSS supera su presupuesto declarado, el kernel lo obligará a quitar la memoria. Esto normalmente significa quitar páginas de caché de archivos, pero también puede significar que se moverá alguna memoria al intercambio. En la mayoría de los casos, esto sucede sin ningún impacto en el proceso, pero si el proceso usa activamente más memoria que el límite de presupuesto, el proceso se ralentizará a medida que las páginas se intercambian y, a continuación, vuelven a entrar. En el límite, el proceso puede ser ANR.
Referencia de Android para android.content.pm.MemoryBudgetInfo.
Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.
Campos
| Nombre | Description |
|---|---|
| FeatureAutomotive |
Obsoletos.
Indica que esto |
| FeatureLeanback |
Obsoletos.
Indica que esto |
| FeatureUnspecified |
Obsoletos.
Indica que es |
| FeatureWatch |
Obsoletos.
Indica que esto |
| StateBackground |
Obsoletos.
Indica que esto |
| StateForeground |
Obsoletos.
Indica que esto |
| StatePerceptible |
Obsoletos.
Indica que esto |
Propiedades
| Nombre | Description |
|---|---|
| AdditionalBytesPerDisplayPixel |
Devuelve los bytes adicionales por píxel en los que se elevará este |
| AdditionalMbPerDensity |
Devuelve la memoria adicional (en MiB) por la que se elevará este |
| Class |
Devuelve la clase en tiempo de ejecución de este |
| Creator |
Información de presupuesto de memoria para una aplicación. |
| Feature |
Devuelve el factor de forma al que se aplica. |
| Handle |
Identificador de la instancia de Android subyacente. (Heredado de Object) |
| JniIdentityHashCode |
Obtiene el código hash de identidad asignado a este Java del mismo nivel por el tiempo de ejecución de interoperabilidad. (Heredado de Object) |
| JniManagedPeerState |
Información de presupuesto de memoria para una aplicación. (Heredado de JavaObject) |
| JniPeerMembers |
Información de presupuesto de memoria para una aplicación. |
| MaxMb |
Devuelve el límite de memoria (en MiB) que |
| PeerReference |
Obtiene la referencia de objeto JNI para este Java del mismo nivel. (Heredado de Object) |
| State |
Devuelve el estado del proceso en el que se aplica. |
| ThresholdClass |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. (Heredado de Object) |
| ThresholdType |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. (Heredado de Object) |
Métodos
| Nombre | Description |
|---|---|
| Clone() |
Crea y devuelve una copia de este objeto. (Heredado de Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Información de presupuesto de memoria para una aplicación. (Heredado de JavaObject) |
| DescribeContents() |
Describir los tipos de objetos especiales contenidos en la representación serializado de esta instancia de Parcelable. |
| Dispose() |
Libera los recursos mantenidos por este Java del mismo nivel. (Heredado de Object) |
| Dispose(Boolean) |
Libera los recursos mantenidos por este Java del mismo nivel. (Heredado de Object) |
| DisposeUnlessReferenced() |
Información de presupuesto de memoria para una aplicación. (Heredado de JavaObject) |
| Equals(Object) |
Información de presupuesto de memoria para una aplicación. (Heredado de JavaObject) |
| Equals(Object) |
Indica si algún otro objeto es "igual a" este. (Heredado de Object) |
| GetHashCode() |
Devuelve un valor de código hash del objeto. (Heredado de Object) |
| JavaFinalize() |
Obsoletos.
Lo llama el recolector de elementos no utilizados en un objeto cuando la recolección de elementos no utilizados determina que no hay más referencias al objeto . (Heredado de Object) |
| Notify() |
Activa un único subproceso que está esperando en el monitor de este objeto. (Heredado de Object) |
| NotifyAll() |
Activa todos los subprocesos que están esperando en el monitor de este objeto. (Heredado de Object) |
| SetHandle(IntPtr, JniHandleOwnership) |
Establece la propiedad Handle. (Heredado de Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Información de presupuesto de memoria para una aplicación. (Heredado de JavaObject) |
| ToArray<T>() |
Crea una matriz administrada a partir de este contenedor de matriz Java. (Heredado de Object) |
| ToString() |
Devuelve una representación de cadena del objeto. (Heredado de Object) |
| UnregisterFromRuntime() |
Anula el registro de este Java del mismo nivel del tiempo de ejecución de interoperabilidad. (Heredado de Object) |
| Wait() |
Hace que el subproceso actual espere hasta que se despierta, normalmente por ser em notificado/em< o >em<interrumpido>/em<.><> (Heredado de Object) |
| Wait(Int64, Int32) |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real. (Heredado de Object) |
| Wait(Int64) |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser <em>notificado</em> o <em>interrumpido</em>, o hasta que haya transcurrido una cierta cantidad de tiempo real. (Heredado de Object) |
| WriteToParcel(Parcel, ParcelableWriteFlags) |
Aplane este objeto en un paquete. |
Implementaciones de interfaz explícitas
| Nombre | Description |
|---|---|
| IJavaPeerable.Disposed() |
Información de presupuesto de memoria para una aplicación. (Heredado de JavaObject) |
| IJavaPeerable.Finalized() |
Información de presupuesto de memoria para una aplicación. (Heredado de JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
Información de presupuesto de memoria para una aplicación. (Heredado de JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Información de presupuesto de memoria para una aplicación. (Heredado de JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Información de presupuesto de memoria para una aplicación. (Heredado de JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Información de presupuesto de memoria para una aplicación. (Heredado de JavaObject) |
| IJavaPeerable.UnregisterFromRuntime() |
Información de presupuesto de memoria para una aplicación. |
Métodos de extensión
| Nombre | Description |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Obtiene el nombre JNI del tipo de la instancia |
| JavaAs<TResult>(IJavaPeerable) |
Intente coerción |
| JavaCast<TResult>(IJavaObject) |
Realiza una conversión de tipos comprobados en tiempo de ejecución de Android. |
| JavaCast<TResult>(IJavaObject) |
Información de presupuesto de memoria para una aplicación. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Intente coerción |