MemoryBudgetInfo Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Informazioni sul budget di memoria per un'applicazione.
[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
- Ereditarietà
- Attributi
- Implementazioni
Commenti
Informazioni sul budget di memoria per un'applicazione. Le voci MemoryBudgetInfo vengono recuperate dalle <voci del budget> di memoria nel manifesto di un'applicazione e possono essere ottenute tramite PackageManager.getMemoryBudgets.
Un MemoryBudgetInfo dichiarato nel manifesto Android imposta un limite massimo sulla memoria disponibile per il pacchetto o per un processo all'interno del pacchetto. Le dichiarazioni MemoryBudgetInfo possono essere visualizzate a livello di applicazione e a livello di processo. I due sono indipendenti e nessuno degli altri esegue l'override dell'altro. In pratica, tuttavia, il budget più piccolo domina.
Ogni MemoryBudgetInfo ha uno stato e una funzionalità; questi due attributi determinano se e quando MemoryBudgetInfo è applicabile.
Lo stato è lo stato operativo del processo o dell'applicazione ed è uno di Primo piano, Percepibile o Background.
La funzionalità seleziona per il fattore di forma del dispositivo ed è una delle opzioni Non specificate, TV, Auto e Watch.
Un MemoryBudgetInfo è applicabile a un processo se la funzionalità non è specificata o se la sua funzionalità corrisponde al fattore di forma del dispositivo. Un memoryBudgetInfo si applica a un processo se applicabile al processo e lo stato MemoryBudgetInfo è minore o uguale allo stato operativo del processo. Le applicazioni hanno anche stato, che è approssimativamente lo stato più basso di qualsiasi processo in esecuzione nell'applicazione.
Un memoryBudgetInfo dichiara un limite superiore per la quantità di memoria che il processo o l'applicazione può usare. Il limite superiore viene calcolato da tre fattori:
maxMb è una quantità di memoria di base, espressa in MiB. Questo deve essere positivo.
additionalBytesPerPixel è un fattore di ridimensionamento: byte per pixel di visualizzazione. Deve essere diverso da negativo e il valore predefinito è zero.
additionalMbPerDensity è un fattore di ridimensionamento: densità di visualizzazione in tempi MiB. Deve essere diverso da negativo e il valore predefinito è zero.
Il limite effettivo viene calcolato come valore maxMb più i fattori di scala applicati alla visualizzazione predefinita del dispositivo.
Se un processo RSS supera il budget dichiarato, il kernel lo forza a eliminare la memoria. Questo significa in genere eliminare le pagine della cache dei file, ma potrebbe anche significare che una certa memoria verrà spostata per lo scambio. Nella maggior parte dei casi ciò si verifica senza alcun impatto sul processo, ma se il processo usa attivamente più memoria del limite di budget, il processo rallenterà man mano che le pagine vengono scambiate e quindi tornano indietro. Nel limite, il processo può essere ANR.
Informazioni di riferimento su Android per android.content.pm.MemoryBudgetInfo.
Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dalla e usati in base ai termini descritti in Creative License 2.5 Attribution License.
Campi
| Nome | Descrizione |
|---|---|
| FeatureAutomotive |
Obsoleti.
Indica che si |
| FeatureLeanback |
Obsoleti.
Indica che questo |
| FeatureUnspecified |
Obsoleti.
Indica che è |
| FeatureWatch |
Obsoleti.
Indica che si |
| StateBackground |
Obsoleti.
Indica che questa operazione |
| StateForeground |
Obsoleti.
Indica che questa operazione |
| StatePerceptible |
Obsoleti.
Indica che questo |
Proprietà
| Nome | Descrizione |
|---|---|
| AdditionalBytesPerDisplayPixel |
Restituisce i byte aggiuntivi per pixel da cui verrà elevato il |
| AdditionalMbPerDensity |
Restituisce la memoria aggiuntiva (in MiB) da cui verrà elevato il |
| Class |
Restituisce la classe di runtime di questo |
| Creator |
Creatore che genera istanze di android.content.pm.MemoryBudgetInfo da un pacco. |
| Feature |
Restituisce il fattore di forma a cui si applica l'oggetto |
| Handle |
Handle per l'istanza di Android sottostante. (Ereditato da Object) |
| JniIdentityHashCode |
Ottiene il codice hash di identità assegnato a questo Java peer dal runtime di interoperabilità. (Ereditato da Object) |
| JniManagedPeerState |
Informazioni sul budget di memoria per un'applicazione. (Ereditato da JavaObject) |
| JniPeerMembers |
Ottiene i metadati JNI usati per accedere ai membri di questa associazione Java. |
| MaxMb |
Restituisce il limite di memoria (in MiB) rappresentato da questo |
| PeerReference |
Ottiene il riferimento all'oggetto JNI per questo peer Java. (Ereditato da Object) |
| State |
Restituisce lo stato del processo in cui si applica. |
| ThresholdClass |
Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice. (Ereditato da Object) |
| ThresholdType |
Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice. (Ereditato da Object) |
Metodi
| Nome | Descrizione |
|---|---|
| Clone() |
Crea e restituisce una copia di questo oggetto. (Ereditato da Object) |
| Construct(JniObjectReference, JniObjectReferenceOptions) |
Informazioni sul budget di memoria per un'applicazione. (Ereditato da JavaObject) |
| DescribeContents() |
Descrivere i tipi di oggetti speciali contenuti nella rappresentazione di marshalling di questa istanza di Parcelable. |
| Dispose() |
Rilascia le risorse contenute in questo peer Java. (Ereditato da Object) |
| Dispose(Boolean) |
Rilascia le risorse contenute in questo peer Java. (Ereditato da Object) |
| DisposeUnlessReferenced() |
Informazioni sul budget di memoria per un'applicazione. (Ereditato da JavaObject) |
| Equals(Object) |
Informazioni sul budget di memoria per un'applicazione. (Ereditato da JavaObject) |
| Equals(Object) |
Indica se un altro oggetto è "uguale a" questo. (Ereditato da Object) |
| GetHashCode() |
Restituisce un valore di codice hash per l'oggetto . (Ereditato da Object) |
| JavaFinalize() |
Obsoleti.
Chiamato dal Garbage Collector su un oggetto quando Garbage Collection determina che non sono presenti altri riferimenti all'oggetto . (Ereditato da Object) |
| Notify() |
Riattiva un singolo thread in attesa del monitor dell'oggetto. (Ereditato da Object) |
| NotifyAll() |
Riattiva tutti i thread in attesa del monitor dell'oggetto. (Ereditato da Object) |
| SetHandle(IntPtr, JniHandleOwnership) |
Imposta la proprietà Handle. (Ereditato da Object) |
| SetPeerReference(JniObjectReference, JniObjectReferenceOptions) |
Informazioni sul budget di memoria per un'applicazione. (Ereditato da JavaObject) |
| ToArray<T>() |
Crea una matrice gestita da questo wrapper di matrice Java. (Ereditato da Object) |
| ToString() |
Restituisce una rappresentazione di stringa dell'oggetto . (Ereditato da Object) |
| UnregisterFromRuntime() |
Annulla la registrazione di questo Java peer dal runtime di interoperabilità. (Ereditato da Object) |
| Wait() |
Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo <>una notifica</em> o <em>interrotto</em>. (Ereditato da Object) |
| Wait(Int64, Int32) |
Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo<> una notifica</em> o <em>interrotto</em> o fino a quando non è trascorsa una determinata quantità di tempo reale. (Ereditato da Object) |
| Wait(Int64) |
Fa sì che il thread corrente attenda finché non viene risvegliato, in genere ricevendo<> una notifica</em> o <em>interrotto</em> o fino a quando non è trascorsa una determinata quantità di tempo reale. (Ereditato da Object) |
| WriteToParcel(Parcel, ParcelableWriteFlags) |
Appiattire questo oggetto in un pacco. |
Implementazioni dell'interfaccia esplicita
| Nome | Descrizione |
|---|---|
| IJavaPeerable.Disposed() |
Informazioni sul budget di memoria per un'applicazione. (Ereditato da JavaObject) |
| IJavaPeerable.Finalized() |
Informazioni sul budget di memoria per un'applicazione. (Ereditato da JavaObject) |
| IJavaPeerable.JniObjectReferenceControlBlock |
Informazioni sul budget di memoria per un'applicazione. (Ereditato da JavaObject) |
| IJavaPeerable.SetJniIdentityHashCode(Int32) |
Informazioni sul budget di memoria per un'applicazione. (Ereditato da JavaObject) |
| IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Informazioni sul budget di memoria per un'applicazione. (Ereditato da JavaObject) |
| IJavaPeerable.SetPeerReference(JniObjectReference) |
Informazioni sul budget di memoria per un'applicazione. (Ereditato da JavaObject) |
| IJavaPeerable.UnregisterFromRuntime() |
Rimuove questa istanza dalla ricerca dell'oggetto Java del runtime. |
Metodi di estensione
| Nome | Descrizione |
|---|---|
| GetJniTypeName(IJavaPeerable) |
Ottiene il nome JNI del tipo dell'istanza |
| JavaAs<TResult>(IJavaPeerable) |
Provare a digitare |
| JavaCast<TResult>(IJavaObject) |
Esegue una conversione del tipo di tipo controllato dal runtime Android. |
| JavaCast<TResult>(IJavaObject) |
Informazioni sul budget di memoria per un'applicazione. |
| TryJavaCast<TResult>(IJavaPeerable, TResult) |
Provare a digitare |