Spec-Zone.ru › TensorFlow 2.3

tf.compat.v1.train.LooperThread

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

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

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

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

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

Как правило, вы передаёте потоки looper методу supervisor 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() вызывает RuntimeError, если попытка присоединения текущего потока, так как это приведёт к тупику. Также ошибка, если вы пытаетесь присоединиться к потоку до его запуска, и попытка вызвать такую ошибку.

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/r2.3/api_docs/python/tf/compat/v1/train/LooperThread

Spec-Zone.ru

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