- Nem fut az Intel grafikus vezérlőin az év egyik legjobban várt címe
- Azonnali fotós kérdések órája
- Bambu Lab 3D nyomtatók
- Fejhallgató erősítő és DAC topik
- 5.1, 7.1 és gamer fejhallgatók
- Kormányok / autós szimulátorok topikja
- Melyik hordozható audiolejátszót (DAP, MP3, stb.) vegyem?
- Apple MacBook
- Vezetékes FÜLhallgatók
- AMD vs. INTEL vs. NVIDIA
Új hozzászólás Aktív témák
-
thon73
tag
válasz
pittbaba
#522
üzenetére
Bocs, közben lemaradtam egy válaszról, de amit írtam, továbbra is érvényes.
Ennyire sztem. nem egyszerű. A doInBackground fut egyedül háttérszálon, ez tud egy értéket (melynek típusa beállítható pl. String) átadni, a már nem háttérszálon futó onPostExecute-nek. De ezt az értéket a fő szál csak úgy magától nem fogja megkapni.
Ugyanakkor a megkötés CSAK az UI elemekre vonatkozik, tehát pl. osztályváltozók a háttérszálról is irhatóak (amennyire tudom, a teljes Application (és szálai) egy heap-en helyezkednek el). A fondorlat abban van, hogy az AsyncTask osztály és a hívó Activity nem feltétlenül létezik ugyanabban az időpillanatban! Az érték átadásakor ezt figyelni kell, ez a legnagyobb buktató!
Ha egyszer elindul, akkor az AsyncTask osztály létezni fog addig, amíg fut v. hivatkozunk rá. Akkor is, ha a háttérszál befejeződött. Így az tűnik a legjobbnak, ha az eredményt egy AsyncTask osztályváltozó tartalmazza, és abból olvassa ki a hívó Activity. A nagy kérdés az, hogy miként értesül a fő Activity arról, hogy futás befejeződött. Ehhez be kell építeni egy Handlert, de akkor kérdéses, hogy érdemes-e AsyncTask-ot használni. Vagy: az AsyncTask get metódusa várakozik, amíg be nem fejeződik a futás. Ezt még nem próbáltam, kérdés, h. ez nem jelenti-e a fő szál leállítását (sztem igen). És akkor még mindig fel kell készíteni arra a fő activity-t, hogy pl. a kép elfordítása során újraindul, mégis ellenőrizze le, nem áll-e rendelkezésre egy kész AsyncTask eredmény.
((Az AsyncTask-kal kapcsolatos tapasztalatokról - mivel elsőre én sem értettem miként működik - írtam egy hosszabb cikket: [link]. Felmerült bennem a kérdés, hogy egyáltalán van-e valami előnye más megoldásokhoz képest.))
Új hozzászólás Aktív témák
- Nem fut az Intel grafikus vezérlőin az év egyik legjobban várt címe
- Azonnali fotós kérdések órája
- Mibe tegyem a megtakarításaimat?
- sziku69: Fűzzük össze a szavakat :)
- Crimson Desert
- Bambu Lab 3D nyomtatók
- Xbox tulajok OFF topicja
- Fejhallgató erősítő és DAC topik
- 5.1, 7.1 és gamer fejhallgatók
- Torrent meghívó kunyeráló
- További aktív témák...
- Ryzen 7 3700X / RTX 2060 SUPER / 32GB RAM / 512GB NVMe Gamer PC
- Beszámítás! Motorola Sound Flow XT2549-1 hangszóró hibátlan működéssel
- Beszámítás! Lenovo Thinkpad P15 Gen 1 FHD notebook - i7 10850H 32GB DDR4 1TB SSD T2000 4GB W11
- Beszámítás! Samsung Galaxy S23 Ultra 256GB okostelefon garanciával hibátlan működéssel
- Samsung Galaxy S23 Plus 5G (8/512 GB) független, garanciás 210 000 Ft
- BESZÁMÍTÁS! Részletfizetés 0% THM ÚJ GIGABYTE A16 3VH 16" notebook R7 260 16GB RTX 5060 3 év 27%
- 27% - LG UltraGear 27GS93QE-B OLED Monitor! 2560x1440 / 240Hz / 0.03ms / G-SYNC / FreeSync
- Tavaszi RAKTÁRSÖPRÉS!!! - Videókártyák, Monitorok, Notebookok, Stb. - Szaküzletből! Számlával!
- Azonnali készpénzes Sony Playstation 4 Slim / PS4 Pro felvásárlás személyesen/csomagküldéssel
- 27% - Samsung Essential S3 S27D366GAU Ívelt VA Monitor!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


