Windows'ta soket, iletişim uç noktası ile işlem arasındaki bağlantıdır. Bu nedenle, bir soketi çoğalttığınızda, iki soketle, ancak yalnızca bir uç nokta ile sarılırsınız. Bu nedenle, diğer süreçte yeni bir yuva oluşturmadan bir işlemi bir işlemden diğerine geçiremezsiniz.
Süreç varolmazsa, soketleri mutlaka varolmaz. Tutma işlemi olmayan bir soket kavramı yoktur. Bu nedenle , çekirdek düzeyinde yuva oluşturmak isteyen Windows çekirdek sürücülerinin bile , sokete sahip olmak veya sokete sahip olabilecek bir işlem bağlamından işlevi çağırmak için bir işlem belirtmesi gerekir. (Veya uç noktaları doğrudan soket kullanmadan değiştirebilirler.)
Sorunuz gerçekten soketlerle ilgili değil, iletişim uç noktalarının kendileriyle ilgili gibi görünüyor. Bir soketin iletişim uç noktasına bir referansı vardır. Soket gittiğinde, referans sayısı düşer. Sıfıra isabet ederse, bitiş noktasının ilişkili olduğu iletişim protokolünün gereklilikleri göz önüne alındığında, izin verilir verilmez kaldırılır. TCP'nin TIME_WAIT durumu vardır ve bu sırada uç nokta "kalan" paketleri işlemek için saklanmalıdır.