Connexion Socket bloque durant plus d'une minute!

CocoaCola71

Membre confirmé
7 Février 2012
10
1
Bonjour à tous.

Voilà mon souci, lorsque je me connecte depuis mon client sur un serveur distant tout fonctionne correctement.
Hors lorsque le serveur freeze ou autre, l'essai de connexion du client dépasse les 60 secondes.
Ce qui bloque mon application bien-sûr :eek:!

Etant nouveau sur mac et son développement (Xcode/Cocoa/Obj-c), qui m'intéresse bcp, je suis bloqué sur ce soucis.
Anciennement en C# un simple try-catch aurait suffit, mais là aucun succès!
J'avais cru comprendre que NStimer permettait de donner une temps limite d’exécution d'une méthode, mais il semblerait qu'il soit en fait un Sleep();

Merci d'avance pour votre coup de pouce :up:
 
J'ai oublié de mettre la parti du code correspondante:
Bloc de code:
CFStreamCreatePairWithSocketToHost(NULL, (CFStringRef)@"192.**.**.**", 11000, &readStream, &writeStream);
Voilà ce qui bloque lorsque la connexion matérielle échoue :(
 
Merci de ta réponse Tatouille.

J'ai mis un thread en place en gardant mon:
Bloc de code:
CFStreamCreatePairWithSocketToHost()
Cela reste une bonne solution vu que cela ne bloque plus mon programme.

Par contre pour ce qui est des socket non bloquant :heu:
En fait je ne vois pas comment utiliser ce genre de socket, ni d'ailleurs quel type de socket il faut utiliser.
J'ai fait ma petite enquête sur le net, sans succès :(, si vous avez un exemple cela serait plus que parfait :up:

Merci pour votre aide :zen:

---------- Nouveau message ajouté à 11h06 ---------- Le message précédent a été envoyé à 10h14 ----------

Et autre chose, quand on parle de non-bloquant, on parle bien de socket asynchrone si je me trompe pas?