linux 建立sever和client程式 基於socket通訊

2025-07-06 17:40:06 字數 1508 閱讀 5871

我在同一臺電腦上,建立了乙個server,兩個socket,我想通過server實現兩個client的通訊

1樓:網友

如果兩個socket a、b 同時監聽同乙個埠。

只有a可以正常收發資料;b是不能收資料的。只有等待a關閉了後,b才能生效,才能正常收發資料。

listen這個函式 不知道你注意沒,只要開啟後,除非close socket 不然他是一直監聽的。

所以要麼你通過**自動或手工實現close socket a,然後開啟b,接收。 當要接收a時,又關閉b開啟a。。 這樣當然非常不理想。

所以最好把兩個client繫結在不同的埠上。ip當然可以相同,你想象,一臺計算機乙個ip,卻有那麼多埠(0-65535)通訊。

linux下socket的通訊:兩個client能不能通過同一埠連線server進行檔案傳輸(注:是兩個client進行檔案互

2樓:網友

……你讓 qq、msn 怎麼活……他們就是這個原理……

兩個 client 統一乙個資料傳輸協議就行了,server 獲取兩個 ip 很簡單的。同時 client 獲取目標 client ,直接 server 可以告訴的……

linux下實現簡單的socket通訊,執行client端時需要傳入哪些引數?

3樓:網友

按照這個程式的寫法是後面只需要跟1個服務端ip位址就可以了,但是你沒有服務端程式,只有客戶端,你去跟誰通訊。

linux socket 客戶端與客戶端通訊

4樓:無情冰水

程式大概如下:在子程序中。

int main()

本程式的用途是:client與server連線後,向server傳送buf陣列,server將buf做相應的處理後發回來,之後client可以與server不斷的建立通訊,但是問題是client第一次傳送資料後併成功接收資料,第二次client接收的是自己的資料,也就是server並沒有與client通訊,這是為什麼呢?我應該怎麼改?

linux socket程式設計問題求教,client和server為什麼時能連線,時不能連線?求指導謝謝

5樓:網友

你的程式就是時能連線,時不連線,英文你寫完後就close掉了,所以就是那個現象!!!

linux下socket做程序間通訊的問題

6樓:網友

我碰到這個問題,是 python語言下的socket,比如伺服器一次性傳送了4096bit給client ,但是client一次只能收1024bit,然後伺服器再繼續發資料的時候,這時客戶端就不是接收當前的內容了,而是會把前面沒收完的繼續收過來,再收現在發的。

把收發的buffer設一樣大。比如你發1024我就收1024的,我發2048,你就收2048,對應的。

linux 建立ADSL連線問題!

虛擬機器的你就別把虛擬機器當真機器。他就是乙個軟體而已。這個軟體要上網,當然是你的真機器來撥號了。之後虛擬機器就能上網了。當然對於虛擬機器的設定也有要求,要求虛擬機器用 nat 方式 因為你是 adsl 撥號,最好用 nat 如果是區域網路由上網,nat 和橋接都可以 虛擬機器裡面的軟體用 dhcp 自動獲取。...

怎麼樣安裝XP和WIN2000SEVER雙系統啊?

裝個虛擬機器vmware,在虛擬機器中裝win2000.xp 2及多系統的安裝方式 及64位windows xp的安裝過程 at 39257700 3800066918t 20000034c 有一個方法我弄過,是在winxp下裝dos71硬碟安裝版,再裝win2000,用xp下的 ntldr 和 n...

linux網路程式設計和linux核心開發哪個有前途

在中國真正有核心開發需求的公司並不多。但是真正做的好的話,錢一定少不了。核心開發難度更大,首先是你要整體掌握linux結構層次,還需要對硬體很熟悉。網路程式設計相對簡單一些。linux應用開發和linux核心開發有區別嗎,哪個有前途 當然有區別了 linux應用開發是上層軟體應用的開發,主要利用li...