Langat#

Johdanto#

Säikeiden avulla VEX AIR -droonin ohjain voi suorittaa useita tehtäviä samanaikaisesti samassa ohjelmassa. Ne mahdollistavat moniajon, jolloin VEX AIR -drone voi suorittaa itsenäisiä toimintoja samanaikaisesti.

Huomautus: Sinun on ensin määriteltävä funktio käyttääksesi sitä säikeen kanssa.

Konstruktori – Luo ja aloita uusia säikeitä.

  • Thread – Käynnistää uuden säikeen, joka suorittaa määritetyn funktion rinnakkain pääohjelman kanssa.

Rakentaja#

Thread#

Thread luo ja aloittaa säikeen. Kun luot säikeen, voit nimetä sen pysäyttääksesi sen, kun sitä ei enää tarvita.

Käyttö:

my_thread = Thread(my_function)

Parametrit

Kuvaus

my_thread

Valinnainen. Uuden ketjun nimi.

callback

Aiemmin määritellyn funktion nimi.

Note: A function must always be defined before it is called.

# 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)