Io uso Indy in molti progetti. Ho usato entrambi 9 e 10 principalmente come server HTTP e proxy. I progetti ottengono traffico molto intenso a volte (HTTP). Indy non mi ha mai deluso. Funziona molto stabile.
Ma ho anche avuto alcune situazioni "strane" in cui ho dovuto scavare in profondità per trovare il problema sottostante. Inoltre non mi piace il modo in cui Indy tende a gestire un sacco di cose attraverso le eccezioni. In generale mi piace di più lo stile di codifica ICS. Ma lasciami andare a ICS.
ICS utilizza socket non bloccanti, mentre indy utilizza il blocco. Mentre il non blocco è ok e sembra essere a prima vista migliore, l'ho trovato irritante in molte situazioni. Il problema è che il flusso naturale del codice viene perso a causa delle funzioni di callback. Ciò rende più difficile scrivere tipi di librerie procedurali. Inoltre non mi piace come tutto venga gestito attraverso i messaggi. Per me diventa molto veloce quando viene mixato con il multithreading. E il multithreading è mainstream in questi giorni.
Così mentre mi piace lo stile di codifica e la qualità del codice in ICS, preferisco la semplicità di utilizzo e la modalità di blocco di Indy. Quello che ti piace di più dipende da te, ma entrambe le librerie sono mature e stabili.
Questi sono i miei due centesimi.
Mentre io favorisco anche Indy, penso che gli exampels di ICS siano superiori. Specialmente Indy10 –
Completamente d'accordo. Indy10 è molto povero sugli esempi. – Runner
@Runner Basta guardare SO ci sono più domande relazionate con problemi di Indy che ICS. Tu sei il giudice che cosa è più stabile. –