recherche

Maison  >  Questions et réponses  >  le corps du texte

c++ - Je ne sais pas combien de données le serveur renvoie. Comment socket_read() de PHP reçoit-il les données complètes ?

Si les données envoyées par le serveur dépassent toujours le nombre maximum d'octets que le client peut supporter en même temps, comment le client peut-il déterminer que les données reçues sont complètes sans effectuer l'opération socket_read. Quelle quantité de données le serveur renvoie-t-il ? ? Composé de /n. J'ai essayé d'utiliser une boucle while pour lire les données du serveur, mais il y a eu un problème avec l'opération.

淡淡烟草味淡淡烟草味2750 Il y a quelques jours618

répondre à tous(1)je répondrai

  • phpcn_u1582

    phpcn_u15822017-05-16 13:11:13

    S'il s'agit d'un lien court, utilisez socket_set_nonblock pour définir le lien de socket sur non bloquant, puis exécutez socket_read dans une boucle lorsque la longueur de la valeur de retour est 0, sortez de la boucle et la réception se termine (cette méthode peut provoquer. problèmes dans certains cas).

    Il est préférable de spécifier la longueur des données côté serveur afin qu'il n'y ait pas d'erreurs.

    répondre
    0
  • Annulerrépondre