IХ. ФУНКЦИИ И ПРОЦЕДУРЫ ВЗАИМОДЕЙСТВИЯ С WINDOWS
3. Функции управления потоками (Thread)
Функция BeginThread (
SecurityAttributes: Pointer;
StackSize: LongWord;
ThreadFunc: TThreadFunc;
Parameter: Pointer;
CreationFlags: LongWord;
var ThreadId: LongWord ): Integer;
Модуль: SysUtils
type TThreadFunc = function( Parameter: Pointer): Integer;
Описание
Функция порождает отдельный поток.
В приложениях Delphi вместо использования функции Win32API CreateThread рекомендуется использовать функцию BeginThread или объект абстрактного класса TThread. Преимущество в использовании Delphi функции BeginThread от WinAPI функции CreateThread состоит в том, что порождая новый поток функция BeginThread устанавливает значение глобальной переменной IsMultiThread в True, что в свою очередь обеспечивает безопасное использование динамической памяти (в то время когда один поток управляет памятью, доступ к диспетчеру памяти для другого потока будет заблокирован до того момента, пока первый поток не освободит диспетчер памяти).
В качестве функции потока (параметр ThreadFunc) используется Pascal-функция. Функция потока должна обрабатывать все исключительные ситуации потока. Если в потоке возникнет любое исключение, для которого не назначен обработчик исключительной ситуации, то выполнение приложения будет прервано.
[Вернуться к содержанию]
|