看到這段代碼的時候不明白SIO_LOOPBACK_FAST_PATH_這個參數是幹什麼用的經過茶葉資料在這裏備註一下。
新的Windows套接字Ioctl,允許TCP套接字上啓用環回的快速路徑。 此功能可以降低延遲並提高使用TCP環回的應用程序(例如金融服務行業使用的應用程序)的性能:
所謂的換回快速路徑就是同一臺主機上的客戶程序和服務器程序通過TCP/IP進行通信,環回接口的IP數據報經傳輸層檢測到目的端地址是環回地址時沒有經過傳輸層和所有網絡層的邏輯操作。以此通過設置這個標誌位來提高環回數據的效率。
int OptionValue = 1;
DWORD NumberOfBytesReturned = 0;
DWORD SIO_LOOPBACK_FAST_PATH_A = 0x98000010;
WSAIoctl(
m_listenSocket,
SIO_LOOPBACK_FAST_PATH_A,
&OptionValue,
sizeof(OptionValue),
NULL,
0,
&NumberOfBytesReturned,
0,
0);