Re[2]: И снова DLL + потоки
От: Рома Украина  
Дата: 27.01.05 17:10
Оценка:
А>Что-то у тебя с синхронизацией... Попробуй вместо ShowMessage написать Sleep(1000). Если тоже "помогает", то похоже проблемы с синхронизацией VCL-потока и создаваемого потока. Напиши подробнее: что у тебя в MyThreadTerminate и т.п.

Извините, в первый раз был не зарегистрирован.

Sleep(1000) тоже помогло

С остальным описывать нечего т.к. оставил только каркасы
Для MyThreadTerminate
осталось только:


procedure TPHRSpooler.MyThreadTerminate(Sender : TObject);
begin
 ShowMessage('Terminated!');
 MyThread := nil;
end

;
Без ShowMessage... MyThreadTerminate не вызывается.


конструктор с деструктором убирал совсем
(оставил только Execute c FreeOnTerminate := true)

из основного приложения с плагинами работаю примерно так:
...
var
CommonPlugin : ICommonPlugin;
begin
...
CommonPlugin.Run;
...
end;

Чего не могу понять, так это чем отличается запуск с диалогом от запуска без него?
Например: не создается скрытое окно потока?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.