Поделиться через


Thread Конструкторы

Определение

Перегрузки

Thread()

Выделяет новый Thread объект.

Thread(ThreadGroup, IRunnable, String, Int64, Boolean)

Выделяет новый Thread объект таким образом, чтобы он target был в качестве объекта запуска, имеет указанное name имя, принадлежит группе потоков, на groupкоторую ссылается, имеет указанные stackSizeзначения и наследует начальные значения для наследуемых переменных inheritThreadLocalstruethread-local thread-local.

Thread(ThreadGroup, IRunnable, String, Int64)

Выделяет новый Thread объект таким образом, чтобы он target был в качестве объекта запуска, имеет указанное name имя и принадлежит группе потоков, на groupкоторую ссылается, и имеет указанный размер стека.

Thread(ThreadGroup, Action, String)
Thread(ThreadGroup, IRunnable, String)

Выделяет новый Thread объект таким образом, чтобы он target был в качестве объекта запуска, имеет указанное name имя и принадлежит группе потоков, на которую groupссылается.

Thread(IntPtr, JniHandleOwnership)

Конструктор, используемый при создании управляемых представлений объектов JNI; вызывается средой выполнения.

Thread(Action, String)
Thread(ThreadGroup, Action, String, Int64)
Thread(ThreadGroup, Action)
Thread(ThreadGroup, IRunnable)

Выделяет новый Thread объект.

Thread(IRunnable, String)

Выделяет новый Thread объект.

Thread(String)

Выделяет новый Thread объект.

Thread(Action)
Thread(ThreadGroup, String)

Выделяет новый Thread объект.

Thread(IRunnable)

Выделяет новый Thread объект.

Thread()

Выделяет новый Thread объект.

[Android.Runtime.Register(".ctor", "()V", "")]
public Thread ();
Атрибуты

Комментарии

Выделяет новый Thread объект. Этот конструктор имеет тот же эффект, что и поток #Thread(ThreadGroup,Runnable,String),(null, null, gname) где gname создается новое имя. Автоматически созданные имена имеют форму "Thread-"+n, где n является целым числом.

Документация по Java для java.lang.Thread.Thread().

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

См. также раздел

Применяется к

Thread(ThreadGroup, IRunnable, String, Int64, Boolean)

Выделяет новый Thread объект таким образом, чтобы он target был в качестве объекта запуска, имеет указанное name имя, принадлежит группе потоков, на groupкоторую ссылается, имеет указанные stackSizeзначения и наследует начальные значения для наследуемых переменных inheritThreadLocalstruethread-local thread-local.

[Android.Runtime.Register(".ctor", "(Ljava/lang/ThreadGroup;Ljava/lang/Runnable;Ljava/lang/String;JZ)V", "", ApiSince=33)]
public Thread (Java.Lang.ThreadGroup? group, Java.Lang.IRunnable? target, string name, long stackSize, bool inheritThreadLocals);
[<Android.Runtime.Register(".ctor", "(Ljava/lang/ThreadGroup;Ljava/lang/Runnable;Ljava/lang/String;JZ)V", "", ApiSince=33)>]
new Java.Lang.Thread : Java.Lang.ThreadGroup * Java.Lang.IRunnable * string * int64 * bool -> Java.Lang.Thread

Параметры

group
ThreadGroup

группа потоков. Если null и есть диспетчер безопасности, группа определяется securityManager#getThreadGroup SecurityManager.getThreadGroup.getThreadGroup(). Если нет диспетчера безопасности или SecurityManager.getThreadGroup() возврата null, группа устанавливается в группу потоков текущего потока.

target
IRunnable

Объект, метод которого run вызывается при запуске этого потока. Если nullвызывается метод выполнения этого потока.

name
String

имя нового потока

stackSize
Int64

требуемый размер стека для нового потока или ноль, чтобы указать, что этот параметр должен игнорироваться.

inheritThreadLocals
Boolean

If true, наследуйте начальные значения для наследуемых потоков локальных параметров из конструктора потока, в противном случае исходные значения не наследуются

Атрибуты

Комментарии

Выделяет новый Thread объект таким образом, чтобы он target был в качестве объекта запуска, имеет указанное name имя, принадлежит группе потоков, на groupкоторую ссылается, имеет указанные stackSizeзначения и наследует начальные значения для наследуемых переменных inheritThreadLocalstruethread-local thread-local.

Этот конструктор идентичен #Thread(ThreadGroup,Runnable,String,long) добавленной способности подавлять или нет, наследуя начальные значения для наследуемых переменных потока локального потока от конструктора. Это позволяет более точно контролировать наследуемые потоковые локальные элементы. При передаче значения falseinheritThreadLocalsнеобходимо учитывать, так как это может привести к неожиданному поведению, если новый поток выполняет код, который ожидает наследование определенного локального значения потока.

Указание значения true параметра inheritThreadLocals приведет к тому, что этот конструктор будет вести себя точно так же, как Thread(ThreadGroup, Runnable, String, long) конструктор.

Добавлено в 9.

Документация по Java для java.lang.Thread.Thread(java.lang.ThreadGroup, java.lang.Runnable, java.lang.String, long, boolean).

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

Применяется к

Thread(ThreadGroup, IRunnable, String, Int64)

Выделяет новый Thread объект таким образом, чтобы он target был в качестве объекта запуска, имеет указанное name имя и принадлежит группе потоков, на groupкоторую ссылается, и имеет указанный размер стека.

[Android.Runtime.Register(".ctor", "(Ljava/lang/ThreadGroup;Ljava/lang/Runnable;Ljava/lang/String;J)V", "")]
public Thread (Java.Lang.ThreadGroup? group, Java.Lang.IRunnable? target, string name, long stackSize);
[<Android.Runtime.Register(".ctor", "(Ljava/lang/ThreadGroup;Ljava/lang/Runnable;Ljava/lang/String;J)V", "")>]
new Java.Lang.Thread : Java.Lang.ThreadGroup * Java.Lang.IRunnable * string * int64 -> Java.Lang.Thread

Параметры

group
ThreadGroup

группа потоков. Если null и есть диспетчер безопасности, группа определяется securityManager#getThreadGroup SecurityManager.getThreadGroup.getThreadGroup(). Если нет диспетчера безопасности или SecurityManager.getThreadGroup() возврата null, группа устанавливается в группу потоков текущего потока.

target
IRunnable

Объект, метод которого run вызывается при запуске этого потока. Если nullвызывается метод выполнения этого потока.

name
String

имя нового потока

stackSize
Int64

требуемый размер стека для нового потока или ноль, чтобы указать, что этот параметр должен игнорироваться.

Атрибуты

Исключения

Если group.destroy() уже выполнено

Комментарии

Выделяет новый Thread объект таким образом, чтобы он target был в качестве объекта запуска, имеет указанное name имя и принадлежит группе потоков, на groupкоторую ссылается, и имеет указанный размер стека.

Этот конструктор идентичен #Thread(ThreadGroup,Runnable,String) тому факту, что он позволяет указать размер стека потоков. Размер стека — это приблизительное количество байтов адресного пространства, выделенного виртуальной машиной для стека этого потока. <b>Эффект параметра, если таковой stackSize имеется, зависит от платформы.</b>

На некоторых платформах, указывая более высокое значение параметра stackSize , может позволить потоку достичь большей глубины рекурсии перед вызовом StackOverflowError. Аналогичным образом, указывая меньшее значение, может позволить большему количеству потоков существовать одновременно, не вызывая OutOfMemoryError (или другую внутреннюю ошибку). Сведения о связи между значением stackSize параметра и максимальной глубиной рекурсии и уровнем параллелизма зависят от платформы. <B>На некоторых платформах значение stackSize параметра может не влиять ни на что.</b>

Виртуальная машина может рассматривать stackSize этот параметр как предложение. Если указанное значение неоправданно низко для платформы, виртуальная машина может вместо этого использовать определенное минимальное значение для конкретной платформы; Если указанное значение является необоснованным высоким, виртуальная машина может использовать некоторые максимальные значения для конкретной платформы. Аналогичным образом виртуальная машина может округить указанное значение вверх или вниз по мере его соответствия (или игнорировать его полностью).

Указание значения нуля для stackSize параметра приведет к тому, что этот конструктор будет вести себя точно так же, как Thread(ThreadGroup, Runnable, String) конструктор.

Из-за характера, зависящей от платформы, поведения этого конструктора, следует применять крайнюю осторожность в его использовании. Размер стека потоков, необходимый для выполнения заданных вычислений, скорее всего, зависит от одной реализации JRE к другой. В свете этого варианта может потребоваться тщательная настройка параметра размера стека, и для каждой реализации JRE может потребоваться повторить настройку, в которой выполняется приложение.

Примечание о реализации. Разработчики платформы Java рекомендуется задокументировать поведение своей реализации в отношении stackSize параметра.

Добавлено в версии 1.4.

Документация по Java для java.lang.Thread.Thread(java.lang.ThreadGroup, java.lang.Runnable, java.lang.String, long).

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

См. также раздел

Применяется к

Thread(ThreadGroup, Action, String)

public Thread (Java.Lang.ThreadGroup group, Action runHandler, string threadName);
new Java.Lang.Thread : Java.Lang.ThreadGroup * Action * string -> Java.Lang.Thread

Параметры

group
ThreadGroup
runHandler
Action
threadName
String

Комментарии

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

Применяется к

Thread(ThreadGroup, IRunnable, String)

Выделяет новый Thread объект таким образом, чтобы он target был в качестве объекта запуска, имеет указанное name имя и принадлежит группе потоков, на которую groupссылается.

[Android.Runtime.Register(".ctor", "(Ljava/lang/ThreadGroup;Ljava/lang/Runnable;Ljava/lang/String;)V", "")]
public Thread (Java.Lang.ThreadGroup? group, Java.Lang.IRunnable? target, string name);
[<Android.Runtime.Register(".ctor", "(Ljava/lang/ThreadGroup;Ljava/lang/Runnable;Ljava/lang/String;)V", "")>]
new Java.Lang.Thread : Java.Lang.ThreadGroup * Java.Lang.IRunnable * string -> Java.Lang.Thread

Параметры

group
ThreadGroup

группа потоков. Если null и есть диспетчер безопасности, группа определяется securityManager#getThreadGroup SecurityManager.getThreadGroup.getThreadGroup(). Если нет диспетчера безопасности или SecurityManager.getThreadGroup() возврата null, группа устанавливается в группу потоков текущего потока.

target
IRunnable

Объект, метод которого run вызывается при запуске этого потока. Если nullвызывается метод выполнения этого потока.

name
String

имя нового потока

Атрибуты

Исключения

Если group.destroy() уже выполнено

Комментарии

Выделяет новый Thread объект таким образом, чтобы он target был в качестве объекта запуска, имеет указанное name имя и принадлежит группе потоков, на которую groupссылается.

Если есть диспетчер безопасности, его SecurityManager#checkAccess(ThreadGroup) checkAccess метод вызывается с ThreadGroup в качестве аргумента.

Кроме того, его checkPermission метод вызывается с RuntimePermission("enableContextClassLoaderOverride") разрешением при вызове напрямую или косвенно конструктором подкласса, который переопределяет getContextClassLoader методы или setContextClassLoader методы.

Приоритет только что созданного потока равен приоритету создаваемого потока, т. е. текущего выполняемого потока. Метод #setPriority setPriority может использоваться для изменения приоритета на новое значение.

Созданный поток изначально помечается как поток управляющей программы, если и только если созданный поток в настоящее время помечен как поток управляющей программы. Метод #setDaemon setDaemon может использоваться для изменения того, является ли поток управляющей программы.

Документация по Java для java.lang.Thread.Thread(java.lang.ThreadGroup, java.lang.Runnable, java.lang.String).

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

См. также раздел

Применяется к

Thread(IntPtr, JniHandleOwnership)

Конструктор, используемый при создании управляемых представлений объектов JNI; вызывается средой выполнения.

protected Thread (IntPtr javaReference, Android.Runtime.JniHandleOwnership transfer);
new Java.Lang.Thread : nativeint * Android.Runtime.JniHandleOwnership -> Java.Lang.Thread

Параметры

javaReference
IntPtr

nativeint

Ссылка IntPtrна объект Java Native Interface (JNI).

transfer
JniHandleOwnership

Значение, JniHandleOwnershipуказывающее, как обрабатывать javaReference

Комментарии

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

Применяется к

Thread(Action, String)

public Thread (Action runHandler, string threadName);
new Java.Lang.Thread : Action * string -> Java.Lang.Thread

Параметры

runHandler
Action
threadName
String

Комментарии

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

Применяется к

Thread(ThreadGroup, Action, String, Int64)

public Thread (Java.Lang.ThreadGroup group, Action runHandler, string threadName, long stackSize);
new Java.Lang.Thread : Java.Lang.ThreadGroup * Action * string * int64 -> Java.Lang.Thread

Параметры

group
ThreadGroup
runHandler
Action
threadName
String
stackSize
Int64

Комментарии

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

Применяется к

Thread(ThreadGroup, Action)

public Thread (Java.Lang.ThreadGroup group, Action runHandler);
new Java.Lang.Thread : Java.Lang.ThreadGroup * Action -> Java.Lang.Thread

Параметры

group
ThreadGroup
runHandler
Action

Комментарии

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

Применяется к

Thread(ThreadGroup, IRunnable)

Выделяет новый Thread объект.

[Android.Runtime.Register(".ctor", "(Ljava/lang/ThreadGroup;Ljava/lang/Runnable;)V", "")]
public Thread (Java.Lang.ThreadGroup? group, Java.Lang.IRunnable? target);
[<Android.Runtime.Register(".ctor", "(Ljava/lang/ThreadGroup;Ljava/lang/Runnable;)V", "")>]
new Java.Lang.Thread : Java.Lang.ThreadGroup * Java.Lang.IRunnable -> Java.Lang.Thread

Параметры

group
ThreadGroup

группа потоков. Если null и есть диспетчер безопасности, группа определяется securityManager#getThreadGroup SecurityManager.getThreadGroup.getThreadGroup(). Если нет диспетчера безопасности или SecurityManager.getThreadGroup() возврата null, группа устанавливается в группу потоков текущего потока.

target
IRunnable

Объект, метод которого run вызывается при запуске этого потока. Если nullвызывается метод выполнения этого потока.

Атрибуты

Исключения

Если group.destroy() уже выполнено

Комментарии

Выделяет новый Thread объект. Этот конструктор имеет тот же эффект, что и поток #Thread(ThreadGroup,Runnable,String),(group, target, gname) где gname создается новое имя. Автоматически созданные имена имеют форму "Thread-"+n, где n является целым числом.

Документация по Java для java.lang.Thread.Thread(java.lang.ThreadGroup, java.lang.Runnable).

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

См. также раздел

Применяется к

Thread(IRunnable, String)

Выделяет новый Thread объект.

[Android.Runtime.Register(".ctor", "(Ljava/lang/Runnable;Ljava/lang/String;)V", "")]
public Thread (Java.Lang.IRunnable? target, string name);
[<Android.Runtime.Register(".ctor", "(Ljava/lang/Runnable;Ljava/lang/String;)V", "")>]
new Java.Lang.Thread : Java.Lang.IRunnable * string -> Java.Lang.Thread

Параметры

target
IRunnable

Объект, метод которого run вызывается при запуске этого потока. Если nullвызывается метод выполнения этого потока.

name
String

имя нового потока

Атрибуты

Комментарии

Выделяет новый Thread объект. Этот конструктор имеет тот же эффект, что и поток #Thread(ThreadGroup,Runnable,String).(null, target, name)

Документация по Java для java.lang.Thread.Thread(java.lang.Runnable, java.lang.String).

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

См. также раздел

Применяется к

Thread(String)

Выделяет новый Thread объект.

[Android.Runtime.Register(".ctor", "(Ljava/lang/String;)V", "")]
public Thread (string name);
[<Android.Runtime.Register(".ctor", "(Ljava/lang/String;)V", "")>]
new Java.Lang.Thread : string -> Java.Lang.Thread

Параметры

name
String

имя нового потока

Атрибуты

Комментарии

Выделяет новый Thread объект. Этот конструктор имеет тот же эффект, что и поток #Thread(ThreadGroup,Runnable,String).(null, null, name)

Документация по Java для java.lang.Thread.Thread(java.lang.String).

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

См. также раздел

Применяется к

Thread(Action)

public Thread (Action runHandler);
new Java.Lang.Thread : Action -> Java.Lang.Thread

Параметры

runHandler
Action

Комментарии

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

Применяется к

Thread(ThreadGroup, String)

Выделяет новый Thread объект.

[Android.Runtime.Register(".ctor", "(Ljava/lang/ThreadGroup;Ljava/lang/String;)V", "")]
public Thread (Java.Lang.ThreadGroup? group, string name);
[<Android.Runtime.Register(".ctor", "(Ljava/lang/ThreadGroup;Ljava/lang/String;)V", "")>]
new Java.Lang.Thread : Java.Lang.ThreadGroup * string -> Java.Lang.Thread

Параметры

group
ThreadGroup

группа потоков. Если null и есть диспетчер безопасности, группа определяется securityManager#getThreadGroup SecurityManager.getThreadGroup.getThreadGroup(). Если нет диспетчера безопасности или SecurityManager.getThreadGroup() возврата null, группа устанавливается в группу потоков текущего потока.

name
String

имя нового потока

Атрибуты

Исключения

Если group.destroy() уже выполнено

Комментарии

Выделяет новый Thread объект. Этот конструктор имеет тот же эффект, что и поток #Thread(ThreadGroup,Runnable,String).(group, null, name)

Документация по Java для java.lang.Thread.Thread(java.lang.ThreadGroup, java.lang.String).

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

См. также раздел

Применяется к

Thread(IRunnable)

Выделяет новый Thread объект.

[Android.Runtime.Register(".ctor", "(Ljava/lang/Runnable;)V", "")]
public Thread (Java.Lang.IRunnable? target);
[<Android.Runtime.Register(".ctor", "(Ljava/lang/Runnable;)V", "")>]
new Java.Lang.Thread : Java.Lang.IRunnable -> Java.Lang.Thread

Параметры

target
IRunnable

Объект, метод которого run вызывается при запуске этого потока. Если nullэтот метод классов run ничего не делает.

Атрибуты

Комментарии

Выделяет новый Thread объект. Этот конструктор имеет тот же эффект, что и поток #Thread(ThreadGroup,Runnable,String),(null, target, gname) где gname создается новое имя. Автоматически созданные имена имеют форму "Thread-"+n, где n является целым числом.

Документация по Java для java.lang.Thread.Thread(java.lang.Runnable).

Части этой страницы — это изменения на основе работы, созданной и общей проектом с открытым исходным кодом Android и используемой в соответствии с условиями, описанными в лицензии Creative Commons 2.5 Attribution.

См. также раздел

Применяется к