Einzelnen Beitrag anzeigen

Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Log Datei Threadsave speichern

  Alt 11. Nov 2009, 11:49
Du erstellst eine Klasse, von der du ein Objekt an beide Threads übergibst:
Delphi-Quellcode:
type
 TDatei=class
  constructor Create; //FCriticalSection.Create
  Destructor Destroy; override //fCriticalSection.free;
 private
  FFileName:string;
  FCriticalSection:TCriticalSection;
 public
  property FileName:string;
  procedure WritetoFile(const s:String);
end;

//...
procedure TDatei.WritetoFile;
begin
  CriticalSection.Enter;
  try
    öffne Datei
    schreibe Datei
    schließe Datei
  finally
    CriticalSection.leave;
  end;
end;
Jetzt kannst du aus jedem Thread einfach WritetoFile aufrufen und alles ist abgesichert.

(aber wird Dateiarbeit nicht auch vom OS abgesichert )
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat