php stream_select возвращает потоки, которым нечего читать - PullRequest
0 голосов
/ 08 июня 2018

У меня есть строка кода, которая выглядит следующим образом:

stream_select($streamsReadyToRead , $lcNull, $lcNull, 0, 31250);

Согласно руководству , это должно «увидеть, станут ли символы доступными для чтения», и $streamsReadyToRead должен быть заполнен просто потоками, которые готовы для чтения.тем не менее, я читаю сокеты следующим образом:

  foreach ($streamsReadyToRead as $streamToRead)
  {
    $text = fgets($streamToRead);
    if (empty($text))
    {
        echo "This should never happen, but does!";
    }
  }

Если я посылаю что-то маленькое через поток, он работает нормально.Когда я набираю более 1000 символов или около того, иногда читается ничего !

Есть что-то, чего я не понимаю?Почему stream_select говорит мне, что в сокете есть символы, доступные для чтения, когда на самом деле еще ничего не готово для чтения?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...