2010-05-28 9 views
1

Comment puis-je désactiver keep-alive lors de l'utilisation de NSURLConnection? Il semble que, après l'avoir annulé et fermé, il enregistre toujours quelque part une socket avec laquelle j'ai été connecté au serveur et pendant que le serveur récupère des informations je ne peux pas accéder à d'autres URL du même serveur. Je me demande s'il existe un moyen de réinitialiser complètement un socket et en commencer un autre.Désactiver keep-alive dans NSURLConnection

Merci,

Nava

+0

Que voulez-vous dire par « alors que le serveur va chercher des informations » et « je ne peux pas accéder à un autre urls »? –

+0

Mon application obtient des fichiers XML du serveur. Pour obtenir des fichiers XML, j'utilise des URL différentes, toutes pointant vers le même serveur. Lorsque le serveur ne peut pas obtenir du code XML d'une certaine URL (je définis un délai dans mon NSURLConnection), je fais une erreur de timeout, qui avertit l'utilisateur, qu'il y a un problème avec le serveur, donc l'interface graphique n'est pas bloquée. si l'utilisateur navigue à travers l'application et essaye d'atteindre une autre URL, l'application n'obtient pas de réponse du serveur puisqu'elle est toujours bloquée avec la demande précédente. La question est comment fermer/réinitialiser la prise sous-jacente? –

+0

"l'application n'obtient pas de réponse du serveur car elle reste bloquée avec la requête précédente". Pourquoi est-ce, cependant? Comment êtes-vous certain que c'est spécifiquement un problème avec le socket de bas niveau qui n'est pas fermé? Pourrait-il y avoir une autre raison? –

Répondre

3

délai d'attente de réglage sur le serveur a résolu le problème

+0

est-il de toute façon désactiver disable-alive dans NSURLConnection? –