Dazu hast du z.B. die gerade aktiven
FTP-Server in einer Liste (z.B. TStringList) und prüfst bei jedem Auftrag, ob der
FTP-Server schon in der Liste ist.
..dies hat meiner Meinung nach den Nachteil, dass es unter Umständen recht lange dauert
bis Aufträge die an nicht aktive
FTP-Server gerichtet sind abgearbeitet werden.
Da ein Verbindungsabbau und -aufbau auch nicht sehr lange dauern würde ich die Liste (Stack)
von oben Position 0 nach unten abarbeiten.
Neue Aufträge sollten dann von hinten an die Liste angehangen werden.
Ein Auftrag könnte dann z.B: aus
FTP-Server, Zugangsdaten, Dateipfad, Dateiname bestehen.
Grüße
Klaus
Das sehe ich etwas anders ...
Also pro
FTP-Server darf immer nur
ein Download stattfinden.
Worst-Case
49 Anfragen gehen an ftp1 und 1 Anfrage geht an ftp2
Jetzt muss der Download für ftp2 so lange warten, bis alle 49 Aufträge vorher abgearbeitet wurden, obwohl dieser Auftrag parallel hätte abgearbeitet werden können.
Meine Variante arbeitet die Liste nach dem Eintragszeitpunkt und zur Verfügung stehender Verbindung zu dem
ftp-Server ab (ist der Server schon in Verwendung, dann den Auftrag liegen lassen)
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9
dc 90 9d f0 e9 de 13 da 60)