Spec-Zone.ru › TensorFlow 1.15

tf.train.LooperThread

Поток, который многократно выполняет код, необязательно по таймеру.

Просмотр псевдонимов

Псевдонимы совместимости для миграции

См. Руководство по миграции для получения дополнительных сведений.

tf.compat.v1.train.LooperThread

tf.train.LooperThread(
    coord, timer_interval_secs, target=None, args=None, kwargs=None
)

Этот класс потока предназначен для использования с Coordinator. Он многократно выполняет код, указанный либо как target и args, либо методом run_loop().

Перед каждым запуском поток проверяет, запросил ли координатор остановку. В этом случае поток looper завершается немедленно.

Если выполняемый код вызывает исключение, это исключение сообщается координатору, и поток завершается. Затем координатор запросит остановку всех других потоков, которые он координирует.

Обычно вы передаете потоки looper методу супервизора Join().

Аргументы
coord Координатор.
timer_interval_secs Границы времени, в которые нужно вызывать Run(), или None, если его нужно вызывать друг за другом.
target Необязательный вызываемый объект, который будет выполняться в потоке.
args Необязательные аргументы для передачи методу target при его вызове.
kwargs Необязательные ключевые аргументы для передачи методу target при его вызове.
Исключения
ValueError Если один из аргументов недействителен.
Атрибуты
daemon Логическое значение, указывающее, является ли этот поток демоновым потоком.

Это должно быть установлено до вызова start(), иначе возникает ошибка RuntimeError. Его начальное значение унаследовано от создающего потока; основной поток не является демоновым потоком, и поэтому все потоки, созданные в основном потоке, по умолчанию имеют daemon = False.

Вся программа Python завершается, когда остаются только демонические потоки.

ident Идентификатор потока этого потока или None, если он еще не запущен.

Это целое число, отличное от нуля. См. функцию get_ident(). Идентификаторы потоков могут быть переиспользованы, когда поток завершается, и создается другой поток. Идентификатор доступен даже после завершения потока.

name Строка, используемая только для идентификации.

Она не имеет семантики. Несколько потоков могут иметь одно и то же имя. Начальное имя задается конструктором.

Методы

getName

getName()

isAlive

isAlive()

Возвращает, жив ли поток.

Этот метод устарел, используйте is_alive() вместо него.

isDaemon

isDaemon()

is_alive

is_alive()

Возвращает, жив ли поток.

Этот метод возвращает True непосредственно перед началом метода run() и сразу после завершения метода run(). Функция модуля enumerate() возвращает список всех живых потоков.

join

join(
    timeout=None
)

Ожидание завершения потока.

Это блокирует вызывающий поток до тех пор, пока поток, для которого вызван метод join(), не завершится — либо нормально, либо из-за необработанного исключения, или пока не произойдет необязательный тайм-аут.

Если аргумент timeout присутствует и не равен None, он должен быть числом с плавающей точкой, определяющим тайм-аут операции в секундах (или их долях). Поскольку join() всегда возвращает None, вы должны вызвать is_alive() после join(), чтобы определить, произошел ли тайм-аут — если поток все еще жив, вызов join() истек по тайм-ауту.

Если аргумент timeout не присутствует или равен None, операция будет блокироваться до завершения потока.

Поток может быть объединён (join) многократно.

join() вызывает исключение RuntimeError, если попытка объединить текущий поток, так как это приведет к тупиковой ситуации. Также ошибка — объединять (join) поток до его запуска, и попытка сделать это вызывает то же исключение.

loop

Просмотреть исходный код

@staticmethod
loop(
    coord, timer_interval_secs, target, args=None, kwargs=None
)

Запуск LooperThread, вызывающий функцию периодически.

Если timer_interval_secs равно None, поток вызывает target(args) повторно. В противном случае target(args) вызывается каждые timer_interval_secs секунды. Поток завершается, когда координатор запрашивает остановку.

Аргументы
coord Координатор.
timer_interval_secs Число. Границы времени, в которые нужно вызывать target.
target Вызываемый объект.
args Необязательные аргументы для передачи методу target при его вызове.
kwargs Необязательные ключевые аргументы для передачи методу target при его вызове.
Возвращаемое значение
Запущенный поток.

run

Просмотреть исходный код

run()

Метод, представляющий активность потока.

Вы можете переопределить этот метод в подклассе. Стандартный метод run() вызывает вызываемый объект, переданный в конструктор объекта в качестве аргумента target, если таковой имеется, с последовательными и ключевыми аргументами, взятыми из аргументов args и kwargs соответственно.

run_loop

Просмотреть исходный код

run_loop()

Вызывается в моменты времени, кратные 'timer_interval_secs'.

setDaemon

setDaemon(
    daemonic
)

setName

setName(
    name
)

start

start()

Запуск активности потока.

Его нужно вызывать не более одного раза на объект потока. Он обеспечивает вызов метода run() объекта в отдельном потоке управления.

Этот метод вызывает исключение RuntimeError, если его вызывают более одного раза на одном объекте потока.

start_loop

Просмотреть исходный код

start_loop()

Вызывается при запуске потока.

stop_loop

Просмотреть исходный код

stop_loop()

Вызывается при остановке потока.

© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r1.15/api_docs/python/tf/train/LooperThread

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API