Грязный или сырой - где важна скорость - PullRequest
0 голосов
/ 17 ноября 2011

Я пытаюсь ускорить мой код как можно быстрее.В то время как я говорю миллисекунды, это делает и действительно может изменить то, что мы делаем.

В непрерывном цикле мы подключаемся к удаленному серверу, ожидая правильного ответа, который будет возвращен.

Грязный путь:

while ($p !== false) {
foreach ($value as $other) {
    fputs($connection, "$other\r\n");
    $p = strpos(fgets($connection), "Y", 9);
}
}
Run Other Code Here

Следующий метод, который у нас есть:

function handle_response ($response)
{
$res_array = explode(",", trim($response));
return $res_array;
}
for ($i = 0;; $i ++) { 
foreach ($value as $other) {
    fputs($connection, "$other\r\n");
    $res = fgets($connection);
    switch (count(handle_response($res))) {
        case 1:
            break;
        case 3:
            RUN OTHER CODE HERE;
            break;
    }
}
}

Первый сценарий, который мы просто выпрыгиваем из цикла циклов и обработки кода ниже, во-вторых, немного большеболее чистая проверка количества возвращаемых результатов, и, поскольку мы ищем 3 поля, которые должны быть возвращены, мы можем обработать следующий код и остаться в цикле, если у нас есть другие значения для проверки.

Есть ли способ, которым я могуМожно ли как-то протестировать и усреднить, скажем, 1000 запросов?для каждого, чтобы получить, который является самым быстрым вплоть до микросекунды.Или же очевидно, что это будет самым быстрым, если оставить в стороне чистое кодирование, так как здесь важна скорость.

...