System.BeginThread
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 |
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.