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

  • Karma

    félisten

    válasz trisztan94 #4722 üzenetére

    Hogy van az, hogy le tudod kérni a pozíciót a térképen mozgáshoz az UpdateMap metódus közepén, de pont ugyanazt a kódot nem tudod átemelni a POI létrehozásához? :F Mert ugyanazt kell csinálni hozzá, nem is értem hol a gond...

    "A geolocator aszinkron szerzi meg a pozíciót, ezért be kell rakni az "async" modifiert a metódusba, ami viszont csak void return értéket enged, tehát nem adja vissza a pozíciót."

    Ebből a mondatból viszont csak a legelső tagmondat igaz, a többi mind tévedés.

    1) Attól, hogy valami aszinkron, még nem kötelező se az async, se az await kulcsszavak használata. A visszatérési érték Task<GeoPosition> típusú, aminek például használhatod a ContinueWith metódusát arra, hogy mi történjen a háttérfolyamat befejeződésekor, nincs kötelezően szükség az awaitre. Csak épp megéri használni, mert garantáltan visszajön a hívószálra és könnyebben olvasható.
    2) Az aszinkron metódusok háromféle visszatérési értékkel rendelkezhetnek: Task, Task<T> vagy void. A GeoLocator a másodikra példa. Void visszatérési értéket csak UI eseménykezelők esetében célszerű írni.
    3) Dehogynem.

    “All nothings are not equal.”

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