AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi D2010, TMediaPlayer, Application.OnIdle wird nicht ausgeführt
Thema durchsuchen
Ansicht
Themen-Optionen

D2010, TMediaPlayer, Application.OnIdle wird nicht ausgeführt

Ein Thema von hoika · begonnen am 4. Mär 2011 · letzter Beitrag vom 4. Mär 2011
Antwort Antwort
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.275 Beiträge
 
Delphi 10.4 Sydney
 
#1

D2010, TMediaPlayer, Application.OnIdle wird nicht ausgeführt

  Alt 4. Mär 2011, 11:40
Hallo #,

wie oben beschrieben.
Lasse ich den TMediaPlayer laufen, wird Application.OnIdle nicht angesprungen.
Erst, wenn er mit der Datei fertig ist.
OK, die App ist nicht Idle ...
Kann der TMediaPlayer vielleicht gar kein asynchrones Abspielen ?

Weiss jemand was darüber ?

Danke


Heiko
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#2

AW: D2010, TMediaPlayer, Application.OnIdle wird nicht ausgeführt

  Alt 4. Mär 2011, 11:55
OnIdle wird, wie es übrigens in der OH erwähnt wird, nur aufgerufen, wenn keine Nachrichten/Messages mehr in der Nachrichtenschleife vorhanden sind.
Der TMediaplayer wird wohl einfach ständig irgendwelche Messages rumschicken und schon gibt es kein OnIdle mehr.

PS: Wenn die App auf Eingaben reagiert oder einen Timer auslöst, dann wird der TMediaplayer wohl doch asynchrones arbeiten.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.275 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: D2010, TMediaPlayer, Application.OnIdle wird nicht ausgeführt

  Alt 4. Mär 2011, 16:39
Hallo,

ich habe das jetzt etwas genauer.

Delphi-Quellcode:
Player.Open;
Player.Play;
Der Code läuft ohne Unterbrechung durch.

OnIdle wird aber für 8 Sekunden nicht aufgerufen.
Das ist genau die Zeit, die er für das Abspielen braucht.

???

Hilfe ..



Heiko
Heiko
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#4

AW: D2010, TMediaPlayer, Application.OnIdle wird nicht ausgeführt

  Alt 4. Mär 2011, 17:22
Application.OnIdle war eigentlich nie ein erstzunehmendes Event.
Der Zeitpunkt zu dem das Event aufgerufen wird ist völlig unvorhersehbar
und der Eventhandler darf nur sehr kurzdauernde Aktionen ausführen.
Würde man in OnIdle länger dauernde Aufgaben (>=1s) ausführen, dann würde die Anwendung
sehr schlecht reagieren.

OnIdle gibt es nicht deshalb weil man das Event unbedingt braucht, sondern eher weil ein VCL-Programmierer gedacht hat: es wäre doch ganz witzig ein Event für den Fall zu haben, dass die Anwendung gerade nix zu tun hat.
Andreas
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#5

AW: D2010, TMediaPlayer, Application.OnIdle wird nicht ausgeführt

  Alt 4. Mär 2011, 18:06
es wäre doch ganz witzig ein Event für den Fall zu haben, dass die Anwendung gerade nix zu tun hat.
Und das nur in Bezug auf den Hauptthread ... andere Threads können hart arbeiten und es kann dennoch passieren, daß OnIdle ausgelöst wird.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Antwort Antwort


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 09:52 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