Почему System.Net.HttpListener создает новый процесс? - PullRequest
3 голосов
/ 24 октября 2009

Почему класс HttpListener создает новый процесс веб-сервера вместо использования обычной Socket и реализации HTTP?

Ответы [ 2 ]

4 голосов
/ 06 декабря 2009

HttpListener - это оболочка для http.sys ( HTTP Server API ), доступная в Windows XP SP2 или новее. Он инструктирует http.sys прислушиваться к HTTP-запросам к конкретным виртуальным хостам / портам, а при наличии запроса «передает» данные ответа http.sys, который возвращает их клиенту.

Очевидными преимуществами являются производительность и возможность обмениваться IP-адресами и портами с другими процессами, такими как Internet Information Server (IIS). Это означает, что вы можете запустить виртуальный хост в своем процессе и виртуальный хост в IIS на одном IP-адресе и порту.

1 голос
/ 24 октября 2009

Я никогда не использовал этот класс раньше, но я предполагаю, что HttpListener фактически подключается к существующему процессу веб-сервера, работающему в Windows? Просто предположение.

...