J'essaie de construire un module de téléchargement continu et basé sur des connexions multiples avec Objective-C.
J'ai mis en place un nouveau NSThread pour gérer les événements (tels que connection:didReceivedData :) de NSURLConnection. Mais j'ai constaté que mon téléchargement n'est pas aussi rapide que mon test sur pc.
Lorsque j'ai consigné certaines informations sur mon module, j'ai constaté que seules 6 connexions recevaient des données du serveur, alors que j'avais lancé 60 connexions.
Après avoir testé sur un PC Windows, j'ai constaté que le nombre de connexions est bien supérieur à 6.
J'ai donc écrit une autre application de test pour vérifier si je pouvais établir une connexion dans une autre application lorsque mon module de téléchargement est en cours d'exécution.
J'ai programmé la création de 100 connexions dans le fil d'exécution principal et de 100 connexions dans le fil d'exécution d'arrière-plan. [[NSRunLoop currentLoop] run];
Les connexions dont les données sont arrivées sont stockées dans un NSMutableSet partagé en utilisant un verrou pour éviter les conflits de ressources, et cet ensemble mutable est vidé toutes les secondes.
Puis j'ai découvert qu'il y a encore 6 connexions actives (qui ont des données qui arrivent) dans l'ensemble mutable.
Je pense donc qu'il y a une limite au nombre de connexions NSURLConnection par progrès unique dans Mac/Cocoa.
Je veux savoir comment faire pour que la limite soit plus grande, par exemple 20 ou autre ?
Merci d'avance.