Thread 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í.
Un subproceso es un subproceso de ejecución en un programa.
[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
- Herencia
- Derivado
- Atributos
- Implementaciones
Comentarios
Un subproceso es un subproceso de ejecución en un programa. La máquina virtual Java permite que una aplicación tenga varios subprocesos de ejecución ejecutándose simultáneamente.
Cada subproceso tiene prioridad. Los subprocesos con mayor prioridad se ejecutan en preferencia para los subprocesos con menor prioridad. Cada subproceso puede o no estar marcado como demonio. Cuando el código que se ejecuta en algún subproceso crea un nuevo Thread
objeto, el nuevo subproceso tiene su prioridad establecida inicialmente igual a la prioridad del subproceso de creación y es un subproceso de demonio si y solo si el subproceso de creación es un demonio.
Cuando se inicia una máquina virtual Java, normalmente hay un único subproceso que no es de demonio (que normalmente llama al método denominado main
de alguna clase designada). La máquina virtual Java sigue ejecutando subprocesos hasta que se produzca una de las siguientes acciones: <ul><li>El exit
método de clase Runtime
se ha llamado y el administrador de seguridad ha permitido que se produzca la operación de salida. <li>Todos los subprocesos que no son subprocesos de demonio han muerto, ya sea devolviendo de la llamada al run
método o iniciando una excepción que se propaga más allá del run
método. </ul>
Hay dos maneras de crear un nuevo subproceso de ejecución. Uno es declarar una clase para que sea una subclase de Thread
. Esta subclase debe invalidar el run
método de la clase Thread
. A continuación, se puede asignar e iniciar una instancia de la subclase. Por ejemplo, un subproceso que calcula primos mayores que un valor indicado podría escribirse de la siguiente manera: <hr><blockquote>
class PrimeThread extends Thread {
long minPrime;
PrimeThread(long minPrime) {
this.minPrime = minPrime;
}
public void run() {
// compute primes larger than minPrime
. . .
}
}
</blockquote><hr>
A continuación, el código siguiente crearía un subproceso y lo iniciaría en ejecución: <blockquote>
PrimeThread p = new PrimeThread(143);
p.start();
</Blockquote>
La otra manera de crear un subproceso es declarar una clase que implementa la Runnable
interfaz . A continuación, esa clase implementa el run
método . A continuación, se puede asignar una instancia de la clase , que se pasa como argumento al crear Thread
e iniciar . El mismo ejemplo de este otro estilo tiene el siguiente aspecto: <hr><blockquote>
class PrimeRun implements Runnable {
long minPrime;
PrimeRun(long minPrime) {
this.minPrime = minPrime;
}
public void run() {
// compute primes larger than minPrime
. . .
}
}
</blockquote><hr>
A continuación, el código siguiente crearía un subproceso y lo iniciaría en ejecución: <blockquote>
PrimeRun p = new PrimeRun(143);
new Thread(p).start();
</Blockquote>
Cada subproceso tiene un nombre para fines de identificación. Es posible que más de un subproceso tenga el mismo nombre. Si no se especifica un nombre cuando se crea un subproceso, se genera un nuevo nombre para él.
A menos que se indique lo contrario, si se pasa un null
argumento a un constructor o método de esta clase, se producirá una NullPointerException
excepción .
Se ha agregado en la versión 1.0.
Documentación de Java para java.lang.Thread
.
Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código Project y que se usan según los términos Creative Commons 2.5 Attribution License.
Constructores
Thread() |
Asigna un nuevo |
Thread(Action) |
Un subproceso es un subproceso de ejecución en un programa. |
Thread(Action, String) |
Un subproceso es un subproceso de ejecución en un programa. |
Thread(IntPtr, JniHandleOwnership) |
Constructor utilizado al crear representaciones administradas de objetos JNI; llamado por el tiempo de ejecución. |
Thread(IRunnable) |
Asigna un nuevo |
Thread(IRunnable, String) |
Asigna un nuevo |
Thread(String) |
Asigna un nuevo |
Thread(ThreadGroup, Action) |
Un subproceso es un subproceso de ejecución en un programa. |
Thread(ThreadGroup, Action, String) |
Un subproceso es un subproceso de ejecución en un programa. |
Thread(ThreadGroup, Action, String, Int64) |
Un subproceso es un subproceso de ejecución en un programa. |
Thread(ThreadGroup, IRunnable) |
Asigna un nuevo |
Thread(ThreadGroup, IRunnable, String) |
Asigna un nuevo |
Thread(ThreadGroup, IRunnable, String, Int64) |
Asigna un nuevo |
Thread(ThreadGroup, IRunnable, String, Int64, Boolean) |
Asigna un nuevo |
Thread(ThreadGroup, String) |
Asigna un nuevo |
Campos
MaxPriority |
Prioridad máxima que puede tener un subproceso. |
MinPriority |
Prioridad mínima que puede tener un subproceso. |
NormPriority |
Prioridad predeterminada que se asigna a un subproceso. |
Propiedades
AllStackTraces |
Devuelve un mapa de seguimientos de pila para todos los subprocesos activos. |
Class |
Devuelve la clase en tiempo de ejecución de este |
ContextClassLoader |
Devuelve el contexto |
Daemon |
Comprueba si este subproceso es un subproceso de demonio. -o bien- Marca este subproceso como un subproceso de demonio #isDaemon o un subproceso de usuario. |
DefaultUncaughtExceptionHandler |
Devuelve el controlador predeterminado invocado cuando un subproceso finaliza repentinamente debido a una excepción no detectada. -o bien- Establezca el controlador predeterminado invocado cuando un subproceso finaliza abruptamente debido a una excepción no detectada y no se ha definido ningún otro controlador para ese subproceso. |
Handle |
Identificador de la instancia de Android subyacente. (Heredado de Object) |
Id |
Devuelve el identificador de este subproceso. |
IsAlive |
Comprueba si este subproceso está activo. |
IsInterrupted |
Comprueba si este subproceso se ha interrumpido. |
JniIdentityHashCode |
Un subproceso es un subproceso de ejecución en un programa. (Heredado de Object) |
JniPeerMembers |
Un subproceso es un subproceso de ejecución en un programa. |
Name |
Devuelve el nombre de este subproceso. -o bien- Cambia el nombre de este subproceso para que sea igual al argumento |
PeerReference |
Un subproceso es un subproceso de ejecución en un programa. (Heredado de Object) |
Priority |
Devuelve la prioridad de este subproceso. -o bien- Cambia la prioridad de este subproceso. |
ThreadGroup |
Devuelve el grupo de subprocesos al que pertenece este subproceso. |
ThresholdClass |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. |
ThresholdType |
Esta API admite la infraestructura mono para Android y no está pensada para usarse directamente desde el código. |
UncaughtExceptionHandler |
Devuelve el controlador invocado cuando este subproceso finaliza repentinamente debido a una excepción no detectada. -o bien- Establezca el controlador invocado cuando este subproceso finaliza repentinamente debido a una excepción no detectada. |
Métodos
ActiveCount() |
Devuelve una estimación del número de subprocesos activos en java del subproceso actual. |
CheckAccess() |
Determina si el subproceso actualmente en ejecución tiene permiso para modificar este subproceso. |
Clone() |
Crea y devuelve una copia de este objeto. (Heredado de Object) |
CountStackFrames() |
Obsoletos.
Cuenta el número de marcos de pila de este subproceso. |
CurrentThread() |
Devuelve una referencia al objeto de subproceso que se está ejecutando actualmente. |
Destroy() |
Obsoletos.
Produce |
Dispose() |
Un subproceso es un subproceso de ejecución en un programa. (Heredado de Object) |
Dispose(Boolean) |
Un subproceso es un subproceso de ejecución en un programa. (Heredado de Object) |
DumpStack() |
Imprime un seguimiento de pila del subproceso actual en el flujo de error estándar. |
Enumerate(Thread[]) |
Copia en la matriz especificada cada subproceso activo del grupo de subprocesos del subproceso actual y sus subgrupos. |
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) |
GetStackTrace() |
Devuelve una matriz de elementos de seguimiento de pila que representan el volcado de pila de este subproceso. |
GetState() |
Devuelve el estado de este subproceso. |
HoldsLock(Object) |
Devuelve |
Interrupt() |
Interrumpe este subproceso. |
Interrupted() |
Comprueba si se ha interrumpido el subproceso actual. |
JavaFinalize() |
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) |
Join() |
Espera a que este subproceso muera. |
Join(Int64) |
Espera como máximo |
Join(Int64, Int32) |
Espera como máximo |
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) |
OnSpinWait() |
Indica que el autor de la llamada no puede avanzar momentáneamente, hasta que se produzcan una o varias acciones por parte de otras actividades. |
Resume() |
Obsoletos.
Produce |
Run() |
Si este subproceso se construyó con un objeto de ejecución independiente |
SetHandle(IntPtr, JniHandleOwnership) |
Establece la propiedad Handle. (Heredado de Object) |
Sleep(Int64) |
Hace que el subproceso que se ejecuta actualmente se suspenda (deje de ejecutarse temporalmente) para el número especificado de milisegundos, sujeto a la precisión y precisión de los temporizadores y programadores del sistema. |
Sleep(Int64, Int32) |
Hace que el subproceso que se ejecuta actualmente se suspenda (deje de ejecutarse temporalmente) para el número especificado de milisegundos más el número especificado de nanosegundos, sujeto a la precisión y precisión de los temporizadores y programadores del sistema. |
Start() |
Hace que este subproceso inicie la ejecución; La máquina virtual Java llama al |
Stop() |
Obsoletos.
Produce |
Stop(Throwable) |
Obsoletos.
Produce |
Suspend() |
Obsoletos.
Produce |
ToArray<T>() |
Un subproceso es un subproceso de ejecución en un programa. (Heredado de Object) |
ToString() |
Devuelve una representación de cadena del objeto. (Heredado de Object) |
UnregisterFromRuntime() |
Un subproceso es un subproceso de ejecución en un programa. (Heredado de Object) |
Wait() |
Hace que el subproceso actual espere hasta que se despierte, normalmente por ser em notificado/em> o <em>interrumpido</em>.<>< (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) |
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) |
Yield() |
Sugerencia al programador de que el subproceso actual está dispuesto a producir su uso actual de un procesador. |
Implementaciones de interfaz explícitas
IJavaPeerable.Disposed() |
Un subproceso es un subproceso de ejecución en un programa. (Heredado de Object) |
IJavaPeerable.DisposeUnlessReferenced() |
Un subproceso es un subproceso de ejecución en un programa. (Heredado de Object) |
IJavaPeerable.Finalized() |
Un subproceso es un subproceso de ejecución en un programa. (Heredado de Object) |
IJavaPeerable.JniManagedPeerState |
Un subproceso es un subproceso de ejecución en un programa. (Heredado de Object) |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
Un subproceso es un subproceso de ejecución en un programa. (Heredado de Object) |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
Un subproceso es un subproceso de ejecución en un programa. (Heredado de Object) |
IJavaPeerable.SetPeerReference(JniObjectReference) |
Un subproceso es un subproceso de ejecución en un programa. (Heredado de Object) |
Métodos de extensión
JavaCast<TResult>(IJavaObject) |
Realiza una conversión de tipos comprobados en tiempo de ejecución de Android. |
JavaCast<TResult>(IJavaObject) |
Un subproceso es un subproceso de ejecución en un programa. |
GetJniTypeName(IJavaPeerable) |
Un subproceso es un subproceso de ejecución en un programa. |