Transferleri yürütme (Drive transfers)
libcurl, transferi gerçekleştirmek için üç farklı yol sunar. Sizin durumunuzda hangi yolun kullanılacağı tamamen size ve neye ihtiyacınız olduğuna bağlıdır.
-
'easy' arayüzü, eşzamanlı (synchronous) bir şekilde tek bir transfer yapmanızı sağlar. libcurl, transferin tamamını yapar ve tamamlandığında - başarılı veya başarısız - kontrolü uygulamanıza geri döndürür.
-
'multi' arayüzü, aynı anda birden fazla transfer yapmak istediğinizde veya sadece engellemeyen (non-blocking) bir transfer istediğinizde kullanılır.
-
'multi_socket' arayüzü, normal multi arayüzün hafif bir varyasyonudur, ancak olay tabanlıdır (event-based) ve eşzamanlı transfer sayısını yüzlere veya binlere çıkarmayı düşünüyorsanız gerçekten kullanılması önerilen API'dir.
Her birine biraz daha yakından bakalım…