AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Delphi Threaddemo ändern/Warten auf Threads
Thema durchsuchen
Ansicht
Themen-Optionen

Delphi Threaddemo ändern/Warten auf Threads

Ein Thema von Hallo_Thomas · begonnen am 1. Aug 2006 · letzter Beitrag vom 1. Aug 2006
Antwort Antwort
Hallo_Thomas

Registriert seit: 18. Apr 2005
Ort: Dresden
405 Beiträge
 
Delphi 2005 Professional
 
#1

Delphi Threaddemo ändern/Warten auf Threads

  Alt 1. Aug 2006, 18:28
Hallo,

ich versuche gerad die Threads zu verstehen, ich wollte dieses Beispiel so abändern das QuickSort erst nach den anderen zwei sortierverfahren startet. Wie stell ich das in dieser Procedur an.


Delphi-Quellcode:
procedure TThreadSortForm.StartBtnClick(Sender: TObject);
var x:Cardinal;
begin
  //for x:=0 to 10do
  begin
  RandomizeArrays;
  ThreadsRunning := 3;

  with TBubbleSort.Create(BubbleSortBox, BubbleSortArray) do
    OnTerminate := ThreadDone;
   // Synchronize;
  with TSelectionSort.Create(SelectionSortBox, SelectionSortArray) do
    OnTerminate := ThreadDone;
 // Dec(ThreadsRunning);
 // if ThreadsRunning = 1 then
 //MsgWaitForMultipleObjects;
  begin
  with TQuickSort.Create(QuickSortBox, QuickSortArray) do
  Begin
    OnTerminate := ThreadDone;
  end;
  end;
  StartBtn.Enabled := False;
  end;
end;
  Mit Zitat antworten Zitat
Hallo_Thomas

Registriert seit: 18. Apr 2005
Ort: Dresden
405 Beiträge
 
Delphi 2005 Professional
 
#2

Re: Delphi Threaddemo ändern/Warten auf Threads

  Alt 1. Aug 2006, 22:23
Sicherlich ist dieses verhalten durch so eine Art schleife zu bewirken, indem ich den Threadzähler auf 2 setzte und Quicksort hier herein kopiere, dock ist die Methodik doch reichlich unelegant find ich?Kann man so was nicht auch durch eine normale schleife erreichem?


Delphi-Quellcode:
procedure TThreadSortForm.ThreadDone(Sender: TObject);
begin
  Dec(ThreadsRunning);
  if ThreadsRunning = 0 then
  begin
    with TQuickSort.Create(QuickSortBox, QuickSortArray) do
  Begin
    OnTerminate := ThreadDone;
  end;
    StartBtn.Enabled := True;
    ArraysRandom := False;
    Label4.Caption:='2';
    ThreadSortForm.StartBtn.Click;
      end;
end;
  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 15:50 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