0
我剛開始學習編寫Linux服務器。
用多線程編碼一個簡單的服務器後,我不知道我們什麼時候應該使用select
。
什麼時候應該使用select與多線程比較?
我與多線程服務器是很簡單的:
while(true)
{
client = accept(sock);
pthread_create(client, processClientFunc);
}
每個客戶都有自己的線程,因此它可以與服務器通信。
我怎麼聽說有三個功能:select, poll and epoll
。
谷歌告訴我,select
可以監視多個文件描述符。
好吧,我知道,但我認爲多線程可以滿足所有需求。另外,即使我使用select
,我仍然需要使用多線程。
所以我的問題是:我們什麼時候應該用select
。
請參閱:http://stackoverflow.com/questions/25091148/single-tcp-ip-server-that-handles-multiple-clients-in-c#25091952 – letmutx