AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Cross-Platform-Entwicklung Verständnisproblem Android synchron/asynchron
Thema durchsuchen
Ansicht
Themen-Optionen

Verständnisproblem Android synchron/asynchron

Ein Thema von Klapauzius · begonnen am 23. Jul 2021 · letzter Beitrag vom 25. Jul 2021
 
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.999 Beiträge
 
Delphi 12 Athens
 
#5

AW: Verständnisproblem Android synchron/asynchron

  Alt 25. Jul 2021, 10:00
Viele Delphi Events laufen unter Android asynchron. Und viele Änderungen von TComponent Eigenschaften laufen zwar "synchron" aber in dem Sinne, das sie im selben thread passieren , jedoch häufig einfach nur messages auf der Message Queue ablegen. Also werden diese Änderungen erst wirksam wenn App idle ist.
Alles was mit Indy Komponenten zu tun hat erfordert es das du Threads verwaltest! Man Sendet und empängt Daten immer "asynchron" also in einem anderen Thread als dem Haupt-Thread.
Alle eigenen Funktionen und Folge-Funktionen die du aus Events heraus aufrufst könnten in einem anderen als dem Hauptthread laufen! Du musst das ab und an mal überprüfen wenn du ein Event verwendest von dem du nicht weist in welchem thread es läuft. Das ist von daher sowieso notwendig da du unter Android ja sowieso ständig Anonyme threads brauchst um deine App arbeiten zu lassen ohne das der Bildschirm (Hautpthread) einfriert und Android den Benutzer fragt ob er die App abschießen will, weil die ne Sekunde lang nicht auf Betriebsystem Messages reagiert hat.
Intern verwendet Firedac auch Threads wenn es mit Datenbank die über einen Datenbankserver erreichbar sind kommuniziert. Es kann passieren das es zu exceptions innerhalb dieser threads kommt, der code der diese Exceptions abfängt ist dann natürlich auch asynchron.
Eigentlich muss man sich irgendwie immer sorgen darum machen ob Code im Hauptthread oder in einem Nebenthread ausgeführt wird.
Ja ich war auch erstaunt wieviel man Wissen muss um das richtige zu tun....
Andreas
Monads? Wtf are Monads?

Geändert von QuickAndDirty (25. Jul 2021 um 10:14 Uhr)
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:38 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz