Delphi-Quellcode:
var List: TList; // irgendwo create aufrufen nicht vergessen
// ...
if bookliste.Selected <> nil then
begin
user := Tpop3.Create(true);
user.Priority := tpNormal;
user.FIndex := bookliste.Selected.Index;
user.FreeOnTerminate := True;
user.OnTerminate := OnTerminate;
List.add(user);
user.Resume;
end;
// in OnTerminate
List.remove(sender);
// das Beenden von einem der Threads
(List[{Index}] as TThread).terminate;
// beim Beenden des Programms
List.free;
Welchen Index du beim Beenden des Threads angibst, hängt davon ab welchen Thread du beenden willst.
Ich hoffe das hilft dir und ich mich nicht zu verworren ausgedrückt habe
MfG,
Bug