2014-01-21 33 views

回答

2

Windows套接字實現對齊到BSD套接字,而也有Windows特定synchronization functions(我假設,Windows套接字實現在內部使用它們)。

看一看在Create*()功能可等待的對象類型,如互斥,信號,自旋鎖,事件和定時器(自Windows XP),並使用帶有類型特定的功能大致如下:

WaitForMultipleObjects()可以使用HANDLE小號

+3

何時被視爲等同於select()使用'WSAEventSelect',插座事件可以與其他HANDLE類型的事件進行多路複用。 –

+0

小心 - 對於高性能服務器,這些等待函數限制爲64個句柄,所以這不是最佳方式 – paulm

+0

@ paulm:好點。但是最佳的方式是什麼?根據實際情況,可能會有阻塞隊列(儘管傳入連接有積壓),M個線程用於M <= 64個句柄或直接回調。如果HANDLE必須執行大量任務,那麼服務可能會高效運行。 – Sam