Einzelnen Beitrag anzeigen

morp2

Registriert seit: 1. Jan 2007
30 Beiträge
 
#4

Re: Konsolenprogramm und Multithreading

  Alt 15. Feb 2007, 16:05
Einfaches BSP:

Delphi-Quellcode:
program thread;
{$APPTYPE CONSOLE}

uses Windows;

function UnserThread(zahl: Pointer): LongInt; stdcall;
begin
  Sleep(2000);
  WriteLn('UnserThread ist fertig');
  Result:=0;
end;

var
  ThreadID: DWORD; //Thread-ID
  ThreadHandle: THandle; //Rückgabewert von CreateThread

begin
  WriteLn;
  WriteLn('Unser Thread-Testprogramm ist gestartet.');
  WriteLn('Nun erzeugen wir den neuen Thread!');

  ThreadHandle:=CreateThread(nil, 0, TFNThreadStartRoutine(@UnserThread),
    nil, 0, ThreadID);

  //wenn der Thread erfolgreich gestartet wurde (ThreadHandle<>0), können
  //wir ThreadHandle wieder freigeben:
  if ThreadHandle<>0 then CloseHandle(ThreadHandle);

  WriteLn('Das Hauptprogramm ist nun am Ende angekommen.');

  //Automatisches Schließen der Konsole verhindern:
  ReadLn;
end.
  Mit Zitat antworten Zitat