Fios#
Introdução#
Os threads permitem que o controlador VEX AIR do drone execute várias tarefas em simultâneo dentro do mesmo programa. Possibilitam a multitarefa, permitindo que o drone VEX AIR execute ações independentes ao mesmo tempo.
Nota: Deve primeiro definir uma função para a utilizar com um thread.
Construtor – Cria e inicia novos threads.
Thread– Inicia uma nova thread que executa a função especificada em paralelo com o programa principal.
Construtor#
Thread#
Thread cria e inicia uma thread. Ao criar uma thread, pode nomeá-la para a interromper quando já não for necessária.
Utilização:
my_thread = Thread(my_function)
Parâmetros |
Descrição |
|---|---|
|
Opcional. Um nome para o novo tópico. |
|
O nome de uma função previamente definida. |
Nota: Uma função deve ser sempre definida antes de ser chamada.
# Only play sounds when the drone moves laterally
def moving_sounds():
while True:
if drone.is_move_active():
controller.sound.play(LOOPING)
while controller.sound.is_active():
wait(50, MSEC)
wait(5, MSEC)
# Run moving_sounds at the same time
moving_sounds_thread = Thread(moving_sounds)
# Fly the drone using the controller
drone.take_off(climb_to=500)
while True:
drone.move_with_vectors(
forward=controller.axis4.position(),
rightward=controller.axis3.position(),
upward=controller.axis1.position(),
rotation=controller.axis2.position()
)
wait(5, MSEC)