具名管道實例

最簡單的管道伺服器會建立管道的單一實例、連接到單一用戶端、與用戶端通訊、中斷與用戶端的連線、關閉管道控制碼,以及終止。 不過,管道伺服器通常會與多個管道用戶端通訊。 管道伺服器可以使用單一管道實例來連接多個管道用戶端,方法是依序連線和中斷與每個用戶端的連線,但效能不佳。 管道伺服器必須建立多個管道實例,以有效率地同時處理多個用戶端。

維護多個管道實例有三種基本策略。

多執行緒管道伺服器最容易寫入,因為每個實例的執行緒會處理單一管道用戶端的通訊。 系統會視需要將處理器時間配置給每個執行緒。 但每個執行緒都會使用系統資源,這是處理大量用戶端之管道伺服器的缺點。

使用單一執行緒伺服器時,比較容易協調影響多個用戶端的作業,而且更容易保護共用資源,避免多個用戶端同時存取。 單一線程伺服器的挑戰是它需要協調重迭的作業,才能配置處理器時間來處理用戶端同時的需求。