Hirdetés

Keresés

Új hozzászólás Aktív témák

  • nope

    tag

    válasz bogil99 #1010 üzenetére

    Van egy kis időm, így lehetne megírni a konkrét problémád GOTO nélkül:

    1. Profil
    HOME+TIME
    _Context: Near GSM
    _Context: Time from 22:00 Till 07:00

    _Enter Task:
    __Airplane Mode Set On
    __Profile Status Felora Set On
    _Exit Task:
    __Profile Status Felora Set Off
    __Stop Task halfhour // biztonsági lépés, hátha a 2 perces várakozásnál tart a halfhour task
    __Airplane Mode Set Off

    2. Profil
    Felora
    _Context: Time repeat every 30 minute
    __Task halfhour :
    ___Airplane Mode Set Off
    ___Wait Minutes 2
    ___Airplane Mode Set On

    Nope

  • nope

    tag

    válasz bogil99 #1010 üzenetére

    Az adott problémától függetlenül:

    Próbálj meg modulárisan gondolkodni, ez esetben taskokra szétszedni a dolgot. Az időzítést csináld meg contextekben, amelyek adott taskot hívnak. Esetleg azok feltételtől függően másik taskot, és így tovább. A goto parancs már 25 éve is kerülendő volt, illett mindenre külön függvényt (processt, taskot) írni.
    Goto-val kevésbé átlátható, és könnyebb végtelen ciklusba kergetni.
    Ha csak taskokat használsz, akkor feltétel teljesül, task elindul, esetleg indít más taskokat, visszatér, ennyi. Ne legyen olyan task, ami folyamatosan fut (persze ez nem mindig érhető el, de törekedni kell rá).
    A folyamatábra nagyon jó ötlet, és egyszerűbb is vele a munka, ha nincs goto.

    De nem akarlak nagyon megkavarni, csak már nekem is sikerült olyan profile-t írnom, amelyik folyamatosan futott és ette az aksit (konkrétan a Battery Changed event meglehetősen gyakori esemény, volt vele gondom).
    Szóval ahogy átlátod és megérted :)

    Nope

Új hozzászólás Aktív témák