Ich habe in einem Service mehrere Datenbank threads (jeder kümmert sich um ene andere
DB) und wenn ich diesen service runterfahren will, dann will ich sicherstellen, dass ich nicht in einem der threads gerade was tue. Ich weiss, dass Schreiben auf eine Variable in einem anderen Thread ganz sicher Probleme bringen kann, ist das mit Lesen genauso? Könnte ich dem Datanmodule, welches in einem anderen Thread nur genutzt wird, eine public property "Busy" verpassen, welche von ausserhalb gelesen werden kann ?
Wenn nicht, was wäre die beste (nicht asynchrone) Methode, um das zu erreichen.
Die Idee war sowas wie
Code:
While List.count > 0 do begin
for item in List do
begin
If not Item.Busy then
begin
List.Remove(Item);
Item.free;
end
end;
If List.Count > 0
Delay(100);
end;
Danke schonmal