Thread 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.
Un thread è un thread di esecuzione in un programma.
[Android.Runtime.Register("java/lang/Thread", DoNotGenerateAcw=true)]
public class Thread : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.Lang.IRunnable
[<Android.Runtime.Register("java/lang/Thread", DoNotGenerateAcw=true)>]
type Thread = class
inherit Object
interface IRunnable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- Ereditarietà
- Derivato
- Attributi
- Implementazioni
Commenti
Un thread è un thread di esecuzione in un programma. La macchina virtuale Java consente a un'applicazione di avere più thread di esecuzione in esecuzione simultaneamente.
Ogni thread ha una priorità. I thread con priorità più alta vengono eseguiti in preferenza ai thread con priorità più bassa. Ogni thread può o non essere contrassegnato come daemon. Quando il codice in esecuzione in un thread crea un nuovo Thread
oggetto, la priorità del nuovo thread è inizialmente impostata su uguale alla priorità del thread di creazione ed è un thread daemon se e solo se il thread di creazione è un daemon.
All'avvio di una macchina virtuale Java, in genere è presente un singolo thread non daemon , che in genere chiama il metodo denominato main
di una classe designata. La macchina virtuale Java continua a eseguire thread fino a quando non si verifica una delle operazioni seguenti: <ul><li>Il exit
metodo della classe Runtime
è stato chiamato e il gestore della sicurezza ha consentito l'esecuzione dell'operazione di uscita. <li>Tutti i thread che non sono thread daemon sono morti, restituendo dalla chiamata al run
metodo o generando un'eccezione che si propaga oltre il run
metodo . </ul>
Esistono due modi per creare un nuovo thread di esecuzione. Uno consiste nel dichiarare una classe come sottoclasse di Thread
. Questa sottoclasse deve eseguire l'override del run
metodo della classe Thread
. Un'istanza della sottoclasse può quindi essere allocata e avviata. Ad esempio, un thread che calcola primi maggiori di un valore dichiarato può essere scritto come segue: <hr><blockquote>
class PrimeThread extends Thread {
long minPrime;
PrimeThread(long minPrime) {
this.minPrime = minPrime;
}
public void run() {
// compute primes larger than minPrime
. . .
}
}
</blockquote><hr>
Il codice seguente crea quindi un thread e avvia l'esecuzione: <blockquote>
PrimeThread p = new PrimeThread(143);
p.start();
</Blockquote>
L'altro modo per creare un thread consiste nel dichiarare una classe che implementa l'interfaccia Runnable
. Tale classe implementa quindi il run
metodo . Un'istanza della classe può quindi essere allocata, passata come argomento durante la creazione Thread
di e l'avvio. Lo stesso esempio in questo altro stile è simile al seguente: <hr><blockquote>
class PrimeRun implements Runnable {
long minPrime;
PrimeRun(long minPrime) {
this.minPrime = minPrime;
}
public void run() {
// compute primes larger than minPrime
. . .
}
}
</blockquote><hr>
Il codice seguente crea quindi un thread e avvia l'esecuzione: <blockquote>
PrimeRun p = new PrimeRun(143);
new Thread(p).start();
</Blockquote>
Ogni thread ha un nome a scopo di identificazione. Più thread possono avere lo stesso nome. Se non viene specificato un nome quando viene creato un thread, viene generato un nuovo nome.
Se non diversamente specificato, il passaggio di un null
argomento a un costruttore o a un metodo in questa classe genererà un'eccezione NullPointerException
.
Aggiunta nella versione 1.0.
Documentazione java per java.lang.Thread
.
Le parti di questa pagina sono modifiche basate sul lavoro creato e condiviso dal Android e usato in base ai termini descritti in 2.5 Attribution License Creative Commons 2.5 Attribution License.
Costruttori
Thread() |
Alloca un nuovo |
Thread(Action) |
Un thread è un thread di esecuzione in un programma. |
Thread(Action, String) |
Un thread è un thread di esecuzione in un programma. |
Thread(IntPtr, JniHandleOwnership) |
Costruttore utilizzato durante la creazione di rappresentazioni gestite di oggetti JNI; chiamato dal runtime. |
Thread(IRunnable) |
Alloca un nuovo |
Thread(IRunnable, String) |
Alloca un nuovo |
Thread(String) |
Alloca un nuovo |
Thread(ThreadGroup, Action) |
Un thread è un thread di esecuzione in un programma. |
Thread(ThreadGroup, Action, String) |
Un thread è un thread di esecuzione in un programma. |
Thread(ThreadGroup, Action, String, Int64) |
Un thread è un thread di esecuzione in un programma. |
Thread(ThreadGroup, IRunnable) |
Alloca un nuovo |
Thread(ThreadGroup, IRunnable, String) |
Alloca un nuovo |
Thread(ThreadGroup, IRunnable, String, Int64) |
Alloca un nuovo |
Thread(ThreadGroup, IRunnable, String, Int64, Boolean) |
Alloca un nuovo |
Thread(ThreadGroup, String) |
Alloca un nuovo |
Campi
MaxPriority |
Priorità massima che un thread può avere. |
MinPriority |
Priorità minima che un thread può avere. |
NormPriority |
Priorità predefinita assegnata a un thread. |
Proprietà
AllStackTraces |
Restituisce una mappa di analisi dello stack per tutti i thread in tempo reale. |
Class |
Restituisce la classe di runtime di questo |
ContextClassLoader |
Restituisce il contesto |
Daemon |
Verifica se questo thread è un thread daemon. -oppure- Contrassegna questo thread come thread daemon #isDaemon o come thread utente. |
DefaultUncaughtExceptionHandler |
Restituisce il gestore predefinito richiamato quando un thread termina bruscamente a causa di un'eccezione non rilevata. -oppure- Impostare il gestore predefinito richiamato quando un thread termina bruscamente a causa di un'eccezione non rilevata e non è stato definito alcun altro gestore per tale thread. |
Handle |
Handle per l'istanza di Android sottostante. (Ereditato da Object) |
Id |
Restituisce l'identificatore di questo thread. |
IsAlive |
Verifica se il thread è attivo. |
IsInterrupted |
Verifica se il thread è stato interrotto. |
JniIdentityHashCode |
Un thread è un thread di esecuzione in un programma. (Ereditato da Object) |
JniPeerMembers |
Un thread è un thread di esecuzione in un programma. |
Name |
Restituisce il nome del thread. -oppure- Modifica il nome di questo thread in modo che sia uguale all'argomento |
PeerReference |
Un thread è un thread di esecuzione in un programma. (Ereditato da Object) |
Priority |
Restituisce la priorità di questo thread. -oppure- Modifica la priorità di questo thread. |
ThreadGroup |
Restituisce il gruppo di thread a cui appartiene questo thread. |
ThresholdClass |
Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice. |
ThresholdType |
Questa API supporta l'infrastruttura Mono per Android e non deve essere usata direttamente dal codice. |
UncaughtExceptionHandler |
Restituisce il gestore richiamato quando questo thread termina bruscamente a causa di un'eccezione non rilevata. -oppure- Impostare il gestore richiamato quando il thread termina bruscamente a causa di un'eccezione non rilevata. |
Metodi
ActiveCount() |
Restituisce una stima del numero di thread attivi nel file Java del thread corrente. |
CheckAccess() |
Determina se il thread attualmente in esecuzione dispone dell'autorizzazione per modificare questo thread. |
Clone() |
Crea e restituisce una copia di questo oggetto. (Ereditato da Object) |
CountStackFrames() |
Obsoleti.
Conta il numero di stack frame in questo thread. |
CurrentThread() |
Restituisce un riferimento all'oggetto thread attualmente in esecuzione. |
Destroy() |
Obsoleti.
Genera l'eccezione |
Dispose() |
Un thread è un thread di esecuzione in un programma. (Ereditato da Object) |
Dispose(Boolean) |
Un thread è un thread di esecuzione in un programma. (Ereditato da Object) |
DumpStack() |
Stampa una traccia dello stack del thread corrente nel flusso di errore standard. |
Enumerate(Thread[]) |
Copia nella matrice specificata ogni thread attivo nel gruppo di thread del thread corrente e nei relativi sottogruppi. |
Equals(Object) |
Indica se un altro oggetto è "uguale a" questo. (Ereditato da Object) |
GetHashCode() |
Restituisce un valore del codice hash per l'oggetto. (Ereditato da Object) |
GetStackTrace() |
Restituisce una matrice di elementi di analisi dello stack che rappresentano il dump dello stack di questo thread. |
GetState() |
Restituisce lo stato di questo thread. |
HoldsLock(Object) |
Restituisce |
Interrupt() |
Interrompe questo thread. |
Interrupted() |
Verifica se il thread corrente è stato interrotto. |
JavaFinalize() |
Chiamato dal Garbage Collector su un oggetto quando Garbage Collection determina che non sono presenti altri riferimenti all'oggetto . (Ereditato da Object) |
Join() |
Attende che il thread venga morto. |
Join(Int64) |
Attende al massimo |
Join(Int64, Int32) |
Attende al massimo |
Notify() |
Riattiva un singolo thread in attesa del monitor dell'oggetto. (Ereditato da Object) |
NotifyAll() |
Riattiva tutti i thread in attesa del monitoraggio di questo oggetto. (Ereditato da Object) |
OnSpinWait() |
Indica che il chiamante non è momentaneamente in grado di progredire, fino all'occorrenza di una o più azioni da parte di altre attività. |
Resume() |
Obsoleti.
Genera l'eccezione |
Run() |
Se questo thread è stato costruito utilizzando un oggetto run separato |
SetHandle(IntPtr, JniHandleOwnership) |
Imposta la proprietà Handle. (Ereditato da Object) |
Sleep(Int64) |
Fa sì che il thread attualmente in esecuzione sospendi (temporaneamente interrompa l'esecuzione) per il numero specificato di millisecondi, soggetto alla precisione e all'accuratezza dei timer di sistema e delle utilità di pianificazione. |
Sleep(Int64, Int32) |
Fa sì che il thread attualmente in esecuzione sospendi (temporaneamente interrompa l'esecuzione) per il numero specificato di millisecondi più il numero specificato di nanosecondi, soggetto alla precisione e all'accuratezza dei timer di sistema e delle utilità di pianificazione. |
Start() |
Fa sì che questo thread inizi l'esecuzione; La macchina virtuale Java chiama il |
Stop() |
Obsoleti.
Genera l'eccezione |
Stop(Throwable) |
Obsoleti.
Genera l'eccezione |
Suspend() |
Obsoleti.
Genera l'eccezione |
ToArray<T>() |
Un thread è un thread di esecuzione in un programma. (Ereditato da Object) |
ToString() |
Restituisce una rappresentazione in formato stringa dell'oggetto. (Ereditato da Object) |
UnregisterFromRuntime() |
Un thread è un thread di esecuzione in un programma. (Ereditato da Object) |
Wait() |
Fa sì che il thread corrente attenda finché non viene risvegliato, in genere eseguendo <una>notifica</em> o <em>interrotto</em>. (Ereditato da Object) |
Wait(Int64) |
Fa sì che il thread corrente attenda finché non viene risvegliato, in genere eseguendo <una notifica</>em> o <em>interrotto</em> o fino a quando non è trascorsa una certa quantità di tempo reale. (Ereditato da Object) |
Wait(Int64, Int32) |
Fa sì che il thread corrente attenda finché non viene risvegliato, in genere eseguendo <una notifica</>em> o <em>interrotto</em> o fino a quando non è trascorsa una certa quantità di tempo reale. (Ereditato da Object) |
Yield() |
Suggerimento all'utilità di pianificazione che il thread corrente è disposto a produrre l'uso corrente di un processore. |
Implementazioni dell'interfaccia esplicita
IJavaPeerable.Disposed() |
Un thread è un thread di esecuzione in un programma. (Ereditato da Object) |
IJavaPeerable.DisposeUnlessReferenced() |
Un thread è un thread di esecuzione in un programma. (Ereditato da Object) |
IJavaPeerable.Finalized() |
Un thread è un thread di esecuzione in un programma. (Ereditato da Object) |
IJavaPeerable.JniManagedPeerState |
Un thread è un thread di esecuzione in un programma. (Ereditato da Object) |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
Un thread è un thread di esecuzione in un programma. (Ereditato da Object) |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Un thread è un thread di esecuzione in un programma. (Ereditato da Object) |
IJavaPeerable.SetPeerReference(JniObjectReference) |
Un thread è un thread di esecuzione in un programma. (Ereditato da Object) |
Metodi di estensione
JavaCast<TResult>(IJavaObject) |
Esegue una conversione del tipo verificato dal runtime Android. |
JavaCast<TResult>(IJavaObject) |
Un thread è un thread di esecuzione in un programma. |
GetJniTypeName(IJavaPeerable) |
Un thread è un thread di esecuzione in un programma. |