System.BeginThread

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

Delphi

function BeginThread(SecurityAttributes: Pointer; StackSize: LongWord; ThreadFunc: TThreadFunc; Parameter: Pointer; CreationFlags: LongWord; var ThreadId: TThreadID): THandle;

C++

extern DELPHI_PACKAGE NativeUInt __fastcall BeginThread(void * SecurityAttributes, unsigned StackSize, TThreadFunc ThreadFunc, void * Parameter, unsigned CreationFlags, unsigned &ThreadId);

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
function public
System.pas
System.hpp
System System

Beschreibung

Beginnt einen neuen Ausführungs-Thread.

Mit dieser Routine oder mit einem TThread-Objekt erzeugen Sie neue Threads. BeginThread beginnt einen neuen Ausführungs-Thread, setzt die globale Variable IsMultiThread und erreicht dadurch, dass der Heap thread-sicher wird.

ThreadFunc ist die Thread-Funktion. Dies ist der Code, der in dem neuen Ausführungs-Thread ausgeführt wird. ThreadFunc sollte in der Lage sein, eigene Exceptions zu behandeln. Da BeginThread jedoch einen Ausführungs-Frame einrichtet, fängt die Standard-Exception-Behandlungsroutine des Systems alle Exceptions ab, die ThreadFunc auslöst.

Parameter zeigt auf einen einzelnen 32-Bit-Parameter, der uninterpretiert an ThreadFunc übergeben wird.

ThreadId gibt den eindeutigen Bezeichner des neuen Threads zurück. Diese ID wird in den Dialogfeld "Thread-Status" des Debuggers angezeigt.

SecurityAttributes ist ein Zeiger auf einen Windows-SecurityAttributes-Record (bzw. eine Struktur). Informationen zu Sicherheitsattributen finden Sie in der Microsoft-Dokumentation.

StackSize ist die Größe des Stack, der für den neuen Thread reserviert ist, wenn CreationFlags STACK_SIZE_IS_A_RESERVATION enthält. Andernfalls wird der Parameter ignoriert.

CreationFlags ist eine Menge von Bits, die mit einem logischen Oder zusammengesetzt sind und aus Folgendem bestehen können:

Wert Bedeutung

CREATE_SUSPENDED

Der Thread wird im unterbrochenen Status erzeugt und erst ausgeführt, wenn die Windows-API-Funktion ResumeThread aufgerufen wird. Wenn dieses Flag nicht einbezogen ist, wird der neue Thread sofort nach der Erstellung ausgeführt.

STACK_SIZE_PARAM_IS_A_RESERVATION

Der Parameter StackSize gibt die Stackgröße für den Thread an. Wenn dieses Flag nicht einbezogen ist, weist der Linker dem neuen Thread eine Standard-Stackgröße zu.


BeginThread gibt das Windows-Thread-Handle zurück. Der Rückgabewert 0 weist auf einen Fehler hin.

Attribute ist eine Struktur, die Informationen über dem Thread, wie z.B. Priorität, Policy und Stackgröße, enthält.