我想用c語言編寫udp聊天服務器。我以前寫過tcp聊天服務器,沒關係。udp聊天服務器在c
在tcp服務器中,accept函數返回一個fd號,服務器根據這個fd號與特定的客戶端進行通信。
但在udp中,我怎麼能聽特定的客戶端?
在我的tcp服務器中,在客戶端連接到服務器之後,創建了一個線程並且它監聽該客戶端。因此,對於每個客戶端,都有一個線程根據從接受函數返回的fd號進行偵聽。所以任何消息都可以根據這個fd號碼發送給特定的客戶端。
我該如何在udp服務器上實現這個功能?
感謝您的回答。
我使用了recvfrom和sendto函數。首先客戶端通過sendto向服務器發送消息。服務器通過recvfrom接收消息。在recvfrom我通過sockaddr_in結構獲取客戶端的地址。我無法找到後綁定這個並使用sendto – cemal 2010-11-16 21:31:12
你不*綁定*,那就是目的地。你可以單獨離開你的套接字,只需調用sendto。 – 2010-11-16 21:32:38