Linguaggio

ProfilingManager Classe

Definizione

Questa classe consente al chiamante di: <ul><li>Request profiling e ascolto dei risultati.

[Android.Runtime.Register("android/os/ProfilingManager", ApiSince=35, DoNotGenerateAcw=true)]
public sealed class ProfilingManager : Java.Lang.Object
[<Android.Runtime.Register("android/os/ProfilingManager", ApiSince=35, DoNotGenerateAcw=true)>]
type ProfilingManager = class
    inherit Object
Ereditarietà
ProfilingManager
Attributi

Commenti

Questa classe consente al chiamante di: <ul><li>Request profiling e ascolto dei risultati. I tipi di profilatura supportati sono: tracce di sistema, dump dell'heap Java, profili heap e analisi dello stack.</li li Register triggers for the system to capture profiling on the apps behalf./li><>Register triggers for the system to capture profiling on the apps behalf.</li></ul>

L'API #requestProfiling può essere usata per iniziare la profilatura. La profilatura può essere terminata manualmente usando CancellationSignal fornito nella richiesta o a seguito di un timeout. Il timeout può essere l'impostazione predefinita del sistema o il chiamante definito nel bundle di parametri per i tipi di selezione.

I risultati della profilatura vengono recapitati alla directory dei dati dell'app richiedente e un puntatore al file verrà ricevuto usando i listener forniti dall'app.

Le app possono fornire listener in uno o entrambi i modi: <ul><li>Un listener specifico della richiesta incluso nella richiesta. Verrà attivato solo con un risultato della richiesta con cui è stato fornito.</li><li>Un listener globale fornito da #registerForAllProfilingResults. Verrà attivato per tutti i risultati appartenenti all'app. Questo listener è l'unico modo per ricevere i risultati dalle istanze di profilatura attivate dal sistema configurate con #addProfilingTriggers.</li></ul>

Le richieste sono limitate e non è garantito che vengano riempite. La limitazione della frequenza può essere disabilitata per i test locali dell'uso #requestProfiling del comando shell device_config put profiling_testing rate_limiter.disabled true

Per i test locali, è possibile accedere più facilmente ai risultati della profilatura abilitando la modalità di debug. In questo modo i file di output verranno mantenuti in una directory di sistema temporanea. I percorsi dei file conservati saranno disponibili in logcat. Il comportamento e il comando variano in base alla versione: <ul><li>Per Android versioni 16 e successive, la modalità di debug manterrà sia la modalità non crittografata (se applicabile) che i risultati elaborati nella directory temporanea. Può essere abilitato con il comando device_config put profiling_testing delete_temporary_results.disabled true shell e disabilitato impostando lo stesso valore su false. I risultati conservati sono accessibili in tutti i tipi di compilazione. </li><li>Per Android versione 15, la modalità di debug manterrà solo il risultato non risolto (se applicabile) nella directory temporanea. Può essere abilitato con il comando device_config put profiling_testing delete_unredacted_trace.disabled true shell e disabilitato impostando lo stesso valore su false. È possibile accedere al file non crittografato conservato solo nelle compilazioni con accesso radice. Per accedere al file di output redatto in un dispositivo non radice, le app possono copiare il file da /pkg/files/profiling/file.type a /pkg/cache/file.type. </li></ul>

Per testare i trigger di profilatura, abilitare la modalità di test per l'app con il comando device_config put profiling_testing system_triggered_profiling.testing_package_name com.your.app shell che: <ul><li>Assicurarsi che sia in esecuzione una traccia in background.</li><li>Consenti a tutti i trigger per il nome del pacchetto specificato di passare il limite di frequenza del livello di sistema. Questa modalità continuerà fino a quando non viene interrotta manualmente con il comando device_config delete profiling_testing system_triggered_profiling.testing_package_nameshell . </li></ul>

I risultati vengono elaborati e contengono informazioni specifiche solo sul processo di richiesta.

Nota: per una guida dettagliata sull'uso di questa API, vedere Acquisire i dati utente reali usando ProfilingManager , che illustra l'acquisizione della profilatura attraverso l'interpretazione dei risultati.

per android.os.ProfilingManager.

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
ProfilingTypeHeapProfile
Obsoleti.

Tipo di profilatura per la #requestProfiling richiesta di un profilo heap.

ProfilingTypeJavaHeapDump
Obsoleti.

Tipo di profilatura per per #requestProfiling richiedere un dump dell'heap Java.

ProfilingTypeStackSampling
Obsoleti.

Tipo di profilatura per per #requestProfiling richiedere un esempio di stack.

ProfilingTypeSystemTrace
Obsoleti.

Tipo di profilatura per la #requestProfiling richiesta di una traccia di sistema.

Proprietà

Nome Descrizione
Class

Restituisce la classe di runtime di questo Objectoggetto .

(Ereditato da Object)
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

Questa classe consente al chiamante di: <ul><li>Request profiling e ascolto dei risultati.

(Ereditato da JavaObject)
JniPeerMembers

Fornisce metadati del membro peer JNI per questo tipo.

PeerReference

Ottiene il riferimento all'oggetto JNI per questo peer Java.

(Ereditato da Object)
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
AddAllProfilingTriggers()

Registrare questo processo per tutti i trigger.

AddProfilingTriggers(IList<ProfilingTrigger>)

Registrare l'elenco dei trigger forniti per questo processo.

ClearProfilingTriggers()

Rimuovere tutti i trigger per questo processo.

Clone()

Crea e restituisce una copia di questo oggetto.

(Ereditato da Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

Questa classe consente al chiamante di: <ul><li>Request profiling e ascolto dei risultati.

(Ereditato da JavaObject)
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()

Questa classe consente al chiamante di: <ul><li>Request profiling e ascolto dei risultati.

(Ereditato da JavaObject)
Equals(Object)

Questa classe consente al chiamante di: <ul><li>Request profiling e ascolto dei risultati.

(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()

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)
RegisterForAllProfilingResults(IExecutor, IConsumer)

Registrare un listener da chiamare per tutti i risultati della profilatura per questo uid.

RemoveProfilingTriggersByType(Int32[])

Rimuovere i trigger per questo processo con i tipi di trigger nell'elenco fornito.

RequestProfiling(ProfilingType, Bundle, String, CancellationSignal, IExecutor, IConsumer)

Profilatura del sistema di richiesta.

RequestRunningSystemTrace(String)

Richiedere uno snapshot di una traccia in background, se ne è in esecuzione uno.

SetHandle(IntPtr, JniHandleOwnership)

Imposta la proprietà Handle.

(Ereditato da Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

Questa classe consente al chiamante di: <ul><li>Request profiling e ascolto dei risultati.

(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)
UnregisterForAllProfilingResults(IConsumer)

Annullare la registrazione di un listener che doveva essere chiamato per tutti i risultati della profilatura.

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)

Implementazioni dell'interfaccia esplicita

Nome Descrizione
IJavaPeerable.Disposed()

Questa classe consente al chiamante di: <ul><li>Request profiling e ascolto dei risultati.

(Ereditato da JavaObject)
IJavaPeerable.Finalized()

Questa classe consente al chiamante di: <ul><li>Request profiling e ascolto dei risultati.

(Ereditato da JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

Questa classe consente al chiamante di: <ul><li>Request profiling e ascolto dei risultati.

(Ereditato da JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Questa classe consente al chiamante di: <ul><li>Request profiling e ascolto dei risultati.

(Ereditato da JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Questa classe consente al chiamante di: <ul><li>Request profiling e ascolto dei risultati.

(Ereditato da JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

Questa classe consente al chiamante di: <ul><li>Request profiling e ascolto dei risultati.

(Ereditato da JavaObject)

Metodi di estensione

Nome Descrizione
GetJniTypeName(IJavaPeerable)

Ottiene il nome JNI del tipo dell'istanza selfdi .

JavaAs<TResult>(IJavaPeerable)

Provare a digitare selfTResult, verificando che la coercizione sia valida sul lato Java.

JavaCast<TResult>(IJavaObject)

Esegue una conversione del tipo di tipo controllato dal runtime Android.

JavaCast<TResult>(IJavaObject)

Questa classe consente al chiamante di: <ul><li>Request profiling e ascolto dei risultati.

TryJavaCast<TResult>(IJavaPeerable, TResult)

Provare a digitare selfTResult, verificando che la coercizione sia valida sul lato Java.

Si applica a