[問題] recv的問題,不知道檔案大小

看板C_and_CPP (C/C++)作者 (deji394su3 )時間16年前 (2010/06/04 18:43), 編輯推噓0(005)
留言5則, 2人參與, 最新討論串1/2 (看更多)
( *[1m *[m 為色碼,可以按 Ctrl+V 預覽會顯示的顏色 ) ( 未必需要依照此格式,文章條理清楚即可 ) 遇到的問題: (題意請描述清楚) 請問各位一個問題,就是我在 linux 寫了一個 server 要recv檔案 但是檔案大小並不知道,因為如果用一個while去接收的話, 好像會因為 blocking 的關係,就收了幾次之後 client已經send完了, 但是server 還是 recv 會 hang在那邊不動了。 請問要怎麼做才好阿.... socket 我是新手....Orz 希望得到的正確結果: 程式跑出來的錯誤結果: 開發平台: (例: VC++ or gcc/g++ or Dev-C++, Windows or Linux) Linux 有問題的code: (請善用置底文標色功能) 補充說明: -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.123.115.134

06/04 19:15, , 1F
是你自訂的傳輸協定還是 FTP?
06/04 19:15, 1F

06/04 19:16, , 2F
自訂的話直接在開頭傳一次檔案大小就不是未知了。
06/04 19:16, 2F

06/04 19:16, , 3F
我是原PO,就是用socket傳送一個檔案而已,跟http無關
06/04 19:16, 3F

06/04 19:18, , 4F
client 是不是你寫的?
06/04 19:18, 4F

06/04 19:19, , 5F
讓 client 在一開始的時候先傳一個檔案大小就好解決。
06/04 19:19, 5F
文章代碼(AID): #1C2DZ7C- (C_and_CPP)
文章代碼(AID): #1C2DZ7C- (C_and_CPP)