в которой хочу в форму вставить данные, данная реализация корректна?
procedure TThreadWork.SetNumberPhoneToEndList(vPhone: string);
begin
Synchronize(
procedure
begin
phone.MemoListNumbers.Lines.Add(vPhone);
end);
end;
Лучше синхронайзом вообще не пользоваться. Сделать StringList, обернуть в критическую секцию и в главном потоке из него добавлять в мемо а лист очищать. Проверять по таймеру или PostMessage
А чем плох синхронайз ? Вроде он у меня не шалит в доп. потоке
останавливает выполнение работы потока до своего завершения.
Первое уже написали, останавливает поток. Но есть доп параметры, чтобы поставить в очередь. А второе, лучше иметь явную обработку в главном потоке, и знать когда что происходит. Например чтобы ошибки ловить
ну это не особо критично в принципе
Полагаю, в HCL, где потоки есть, синхронайз не используешь ? Какие юниты стоит посмотреть, где есть потоки и альтернативное решение (без синхронайза) ?
в htmldraw ImageLoader, htmlani
Обсуждают сегодня