AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

TThread bei Android

Ein Thema von sko1 · begonnen am 19. Mai 2017 · letzter Beitrag vom 22. Mai 2017
Antwort Antwort
sko1

Registriert seit: 27. Jan 2017
577 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#1

TThread bei Android

  Alt 19. Mai 2017, 11:23
Hallo,

da die Mailabholung und Weiterverarbeitung bei mir recht lange dauert und Android dann schon der Meinung ist, die App reagiert nicht mehr, habe ich das Ganze in einen Thread ausgelagert.

Der Thread wird mit
Delphi-Quellcode:
 
   Thread := TThreadMail.Create(false);

nach Erzeugung sofort gestartet, unter Windows alles bestend, unter Android springt er gar nicht erst ins Thread.Execute!
Daher habe ich zusätzlich ein Thread.Start; eingebaut, mit der Fehlermeldung unter Windows dass ein gestarteter Thread nicht noch mal gestartet werden darf (eigentlich logisch), aber unter ASndroid läuft der Thread nun auch los.

Behelfslösung ist nun:
Delphi-Quellcode:
   Thread := TThreadMail.Create(false);
{$IFDEF ANDROID}
    Thread.Start;
{$ENDIF}

Aber warum startet der unter Android nicht von allein? Ein Testthread mit einer Zählschleife läuft sofort los, der eigentliche Mailthread aber nicht!

Wo könnte ich anfangen zu suchen?

Ciao
Stefan
  Mit Zitat antworten Zitat
SebastianZ

Registriert seit: 23. Jul 2009
89 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: TThread bei Android

  Alt 19. Mai 2017, 12:10
Eventuell hast du im Creator des Mail-Threads etwas drin, dass Probleme macht?

Mein Vorgehen wäre hier:
> Original Sourcen des Mailthreads sichern
> Einzelne Teile des Mailthreads nach und nach kommentieren und sehen ab wann er läuft.
Falls er ab einem gewissen Punkt korrekt gleich läuft, dann weißt du, welche Sourcen im Thread die Probleme verursachen.
  Mit Zitat antworten Zitat
sko1

Registriert seit: 27. Jan 2017
577 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#3

AW: TThread bei Android

  Alt 20. Mai 2017, 09:25
Im Creator des Threads ist gar nichts vorhanden, es gibt neu den Execute!

Und wenn es einen Creator gäbe, warum startet der Thread dann und arbeitet fehlerfrei nach Thread.Start ?

Ciao
Stefan
  Mit Zitat antworten Zitat
SebastianZ

Registriert seit: 23. Jul 2009
89 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: TThread bei Android

  Alt 22. Mai 2017, 16:36
Im Creator des Threads ist gar nichts vorhanden, es gibt neu den Execute!

Und wenn es einen Creator gäbe, warum startet der Thread dann und arbeitet fehlerfrei nach Thread.Start ?

Ciao
Stefan
Da ich deine Sourcen nicht kenne war das eine Vermutung.
Irgend ein unterschied zwischen dem "Zählthread" und dem Mailthread muss bestehen, sonst würden beide gleich starten.
Daher mein Vorschlag mit dem Auskommentieren.

Da ich weder weiß wie dein Thread aufgebaut ist, noch welche Technik/ Schnittstellen du verwendest kann ich hier nicht mehr sagen.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 12:46 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz