Trådar#
Introduktion#
Trådar gör det möjligt för VEX AIR-drönarkontrollen att köra flera uppgifter samtidigt inom samma program. De möjliggör multitasking, vilket gör att VEX AIR-drönaren kan utföra oberoende åtgärder samtidigt.
Obs: Du måste först definiera en funktion för att kunna använda den med en tråd.
Konstruktör – Skapa och starta nya trådar.
Thread– Startar en ny tråd som kör den angivna funktionen parallellt med huvudprogrammet.
Konstruktör#
Thread#
Thread skapar och startar en tråd. När du skapar en tråd kan du namnge den för att stoppa den när den inte längre behövs.
Användande:
my_thread = Thread(my_function)
Parametrar |
Beskrivning |
|---|---|
|
Valfritt. Ett namn för den nya tråden. |
|
Namnet på en tidigare definierad funktion. |
Obs: En funktion måste alltid definieras innan den anropas.
# 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)