ProfilingManager.RequestProfiling Metodo
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.
Profilatura del sistema di richiesta.
[Android.Runtime.Register("requestProfiling", "(ILandroid/os/Bundle;Ljava/lang/String;Landroid/os/CancellationSignal;Ljava/util/concurrent/Executor;Ljava/util/function/Consumer;)V", "", ApiSince=35)]
public void RequestProfiling(Android.OS.ProfilingType profilingType, Android.OS.Bundle? parameters, string? tag, Android.OS.CancellationSignal? cancellationSignal, Java.Util.Concurrent.IExecutor? executor, Java.Util.Functions.IConsumer? listener);
[<Android.Runtime.Register("requestProfiling", "(ILandroid/os/Bundle;Ljava/lang/String;Landroid/os/CancellationSignal;Ljava/util/concurrent/Executor;Ljava/util/function/Consumer;)V", "", ApiSince=35)>]
member this.RequestProfiling : Android.OS.ProfilingType * Android.OS.Bundle * string * Android.OS.CancellationSignal * Java.Util.Concurrent.IExecutor * Java.Util.Functions.IConsumer -> unit
Parametri
- profilingType
- ProfilingType
Tipo di profilatura da raccogliere.
- parameters
- Bundle
Bundle di parametri correlati alla richiesta. Se il bundle contiene parametri non riconosciuti, la richiesta avrà esito negativo con android.os.ProfilingResult#ERROR_FAILED_INVALID_REQUEST. Se i valori per i parametri non sono compresi nell'intervallo supportato, verrà scelto il valore di intervallo più vicino possibile.
L'uso di wrapper androidx è consigliato per la generazione diretta.
- tag
- String
Dati definiti dal chiamante per identificare l'output. I primi 20 caratteri alfanumerici, più trattini, verranno abbassati e inclusi nel nome file di output.
- cancellationSignal
- CancellationSignal
per il chiamante ha richiesto l'annullamento. I risultati verranno restituiti se disponibili. Se è Null, l'app richiedente non sarà in grado di arrestare la raccolta. La raccolta verrà interrotta dopo il timeout con le configurazioni fornite o con le impostazioni predefinite del sistema
- executor
- IExecutor
Executor con cui eseguire il callback. Verrà usato solo per il listener fornito in questo metodo. Se si tratta di null e non vengono registrate combinazioni di executor e listener globali al momento della richiesta, la richiesta verrà eliminata.
- listener
- IConsumer
Listener da attivare con il risultato. Verranno attivati anche tutti i listener globali registrati tramite #registerForAllProfilingResults . Se è Null e non vengono registrate combinazioni di listener e executor globali al momento della richiesta, la richiesta verrà eliminata.
- Attributi
Commenti
Profilatura del sistema di richiesta.
Nota: l'uso diretto di questa API non è consigliato per la maggior parte dei casi d'uso. Prendere in considerazione l'uso dei wrapper di livello superiore forniti da AndroidX che creeranno correttamente la richiesta, supportando le opzioni disponibili con parametri di richiesta semplificati.
Sia un listener che un executor devono essere impostati al momento della richiesta per l'evasione della richiesta. Le coppie listener/executor possono essere impostate in questo metodo, con #registerForAllProfilingResultso entrambi. Il listener e l'executor devono essere impostati insieme, nella stessa chiamata. Se non viene impostata alcuna combinazione di listener ed executor, la richiesta verrà eliminata e non verrà ricevuto alcun callback.
Le richieste saranno limitate e non saranno sicuramente compilate.
Potrebbe verificarsi un ritardo prima dell'inizio della profilatura. Per i tipi di profilatura continua (traccia di sistema, campionamento dello stack e profilatura dell'heap), è consigliabile avviare la raccolta in anticipo e arrestarla immediatamente cancellationSignal dopo l'area di interesse per assicurarsi che la sezione desiderata venga acquisita. Per i dump dell'heap, è consigliabile eseguire test in locale per assicurarsi che il dump dell'heap venga raccolto al momento appropriato.
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.