Hirdetés
- Milyen okostelefont vegyek?
- Megjöttek Magyarországra a Redmi Note 15-ök, január 22-től ennyiért kaphatók
- Messze nyolcezer fölött!
- Xiaomi 15 - kicsi telefon nagy energiával
- Xiaomi 15T - reakció nélkül nincs egyensúly
- Tiltott lett Lufthansa-csoport repülőin power bankot használni
- Magisk
- Okosóra és okoskiegészítő topik
- Honor Magic6 Pro - kör közepén számok
- Honor Magic8 Lite - a félig sikerült bűvésztrükk
Ú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
- Milyen okostelefont vegyek?
- Milyen videókártyát?
- Megjöttek Magyarországra a Redmi Note 15-ök, január 22-től ennyiért kaphatók
- Messze nyolcezer fölött!
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Lelövi a Messengert a Facebook Windowson és Macen
- Xiaomi 15 - kicsi telefon nagy energiával
- Xiaomi 15T - reakció nélkül nincs egyensúly
- AI fókuszú rendszerchipekkel köszönt be a Mediatek
- Szünetmentes tápegységek (UPS)
- További aktív témák...
- Xiaomi Mijia Smart Socket Plug kínai WIFI-set keresek
- Azonnali készpénzes Sony Playstation 4 Slim / PS4 Pro felvásárlás személyesen/csomagküldéssel
- Lenovo L13 Core I3-10110U / 4GB DDR4 / LAPTOP 2
- GYÖNYÖRŰ iPhone 13 Mini 128GB Starlight-1 ÉV GARANCIA -Kártyafüggetlen, MS4182, 94% Akkumulátor
- Apple Watch Series 10 42mm Jet Black 96% (1év Garancia)
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs


