История изменений
Исправление windows10, (текущая версия) :
Вот смотри. Твоя программа, то есть бинарь, висит слушает сокет.
void loop {
if (кто_то подключился_к_сокету) {process($_GET, $_POST);}
}
void process(get,post) {
# Тут твои шаблоны бла бла бла, в общем обработка запроса
return или не return, пох
}
Так вот, когда у тебя начнет обрабатываться process, твой loop притормозится до тех пор, пока не будет завершен, соответственно следующие подключения к сокету обрабатываться не будут. Ну это я тебе в упрощенном виде показал.
В случае использования epoll, тебе придется обрабатывать то, что твой epoll насобирал, при чем в том порядке в котором насобирал, и с теми дескрипторами которые насобирал, иначе Вася получит респонс на реквест, который отправил Петя.
Epoll - это всего лишь инструмент, а не магическая кнопка «сделать все красиво».
Исходная версия windows10, :
Вот смотри. Твоя программа, то есть бинарь, висит слушает сокет.
void loop {
if (кто_то подключился_к_сокету) {process($_GET, $_POST);}
}
void process(get,post) {
# Тут твои шаблоны бла бла бла, в общем обработка запроса
return или не return, пох
}
Так вот, когда у тебя начнет обрабатываться process, твой loop притормозится до тех пор, пока не будет завершен, соответственно следующие подключения к сокету обрабатываться не будут. Ну это я тебе в упрощенном виде показал.
В случае использования epoll, тебе придется обрабатывать то, что твой epoll насобирал, при чем в том порядке в котором насобирал, и с теми дескрипторами которые насобирал, иначе Вася получит респонс на реквест, который отправил Петя.