Einzelnen Beitrag anzeigen

Wishmaster

Registriert seit: 14. Sep 2002
Ort: Steinbach, MB, Canada
301 Beiträge
 
Delphi XE2 Architect
 
#4

AW: frage zu threads und timer

  Alt 9. Dez 2013, 09:31
danke für die schnelle antwort.

über die Sleep funktion hatte ich mir auch schon gedanken gemacht das die vielleicht nicht die beste lösung ist.
und dass mit der INFINITE Konstante macht in meinem fall keinen sinn.
ich habe für jeden thread drei verschiedene Callback funktionen die mir genau sagen wann und was abgeht;
und somit kann ich auf die anderen threads reagieren.

mir ging es hauptsächlich ums perfect timing from within the loop.


Delphi-Quellcode:
procedure TBassRecorder.RecThreadWorkerCallback(Thread: TMultiThreadThread;
 Parameters : TObject; var Data, Results : TObject);
begin
  // main thread wo sehr hart gearbeitet wird
end;


procedure TBassRecorder.VasThreadResultsCallback(Sender: TObject; var Data, Results: TObject);
var
  WorkResult: TWorkResult;
begin
  WorkResult := TWorkResult(Results);
 if WorkResult.Status = thFinished then
  begin
   ThreadFinished[THREAD_VAS]:= True;
  end;
end;


procedure TBassRecorder.VasThreadMessage(Sender: TObject; var Message1, Message2: TObject);
begin
  // test
 if TWorkMessage(Message1).Status = thStarting then
  begin
   ThreadFinished[THREAD_VAS]:= False;
  end;

 if TWorkMessage(Message1).Status = thTerminated then
  begin
   ThreadFinished[THREAD_VAS]:= True;
  end;
end;

wie schon gesagt das ding ist ein kompliziertes monster geworden. aber ich denke ich habe die meisten fehler ausgemerzt.
natürlich muss ich das ganze auch auf anderen Systemen testen.


hat nichts mit dem thema zutun aber rein theoretisch, welche features würdet ihr euch in ein Sound-Recorder wünschen


thanks again for your help.
  Mit Zitat antworten Zitat