AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Thread's & Signals?

Ein Thema von Mavarik · begonnen am 14. Mai 2013 · letzter Beitrag vom 27. Jun 2013
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.127 Beiträge
 
Delphi 10.3 Rio
 
#11

AW: Thread's & Signals?

  Alt 23. Mai 2013, 12:28
Das Create vom TEvent hast du aber drin oder hast den quelltext extrem gekürzt ?
Ja sorry... Ging mir nur um die Aufrufreihenfolge...

Im Simulator funktioniert es ja auch....

Mavarik
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.127 Beiträge
 
Delphi 10.3 Rio
 
#12

AW: Thread's & Signals?

  Alt 26. Jun 2013, 18:05
OK... Es geht doch...

Der Compiler akzeptiert zwar

Delphi-Quellcode:
var
  E : TEvent;
begin
  E := TEvent.Create;
  E.ResetEvent;
...
end;
Aber es funktioniert nur mit:

Delphi-Quellcode:
var
  E : TEvent;
begin
  E := TEvent.Create(NIL,true,true,''); // <---
  E.ResetEvent;
...
end;
Das war der Trick!

Grüsse Mavarik
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#13

AW: Thread's & Signals?

  Alt 27. Jun 2013, 06:53
Ich persönlich finde es ja schicker, wenn der Event sich selbst zurücksetzt.

Dann reicht
Delphi-Quellcode:
var
  E : TEvent;
begin
  E := TEvent.Create( nil, False, False, '' );
  while not Terminated do
  begin
    E.WaitFor;
  end;
end;
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.127 Beiträge
 
Delphi 10.3 Rio
 
#14

AW: Thread's & Signals?

  Alt 27. Jun 2013, 13:15
Ich persönlich finde es ja schicker, wenn der Event sich selbst zurücksetzt.
Ist glaube ich Geschmacksache.

Ich mache es lieber so...

Delphi-Quellcode:
  while GetAdresse and not Terminated do
    begin
      E.ResetEvent;

      Akt := GetTickCount;
      Waiter := Akt - LastTick;
      LastTick := Akt;

      if Waiter < 1000 then
        Sleep(1000-Waiter);

      FGeocoder.Geocode(Address); // 1x pro Sekunde

      R := E.WaitFor(15000);
      case R of
        wrSignaled : begin
                           Synchronize(Process);
                           if fAbort then
                             begin
                               Error := -8;
                               break;
                             end;
                         end;
        wrTimeout : begin
                           Error := -4;
                           break;
                         end;
        wrAbandoned : begin
                           Error := -5;
                           break;
                         end;
        wrError : begin
                           Error := -6;
                           break;
                         end;
        wrIOCompletion : begin
                           Error := -7;
                           break;
                         end;
      end;
    end;
Mavarik
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 11:06 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