看板Programming
標 題Re: [問題] 請教一個thread的問題
發信站政大狂狷年少 (Mon Nov 13 04:25:34 2006)
轉信站ptt!ctu-reader!Spring!news.nctu!news.ntu!news.ee.ttu!netnews.csie.nctu
※ 引述《[email protected] (\<囧>/ )》之銘言:
> 小弟斗膽,請大家幫我看一下,我的thread哪邊用錯了
> 這是一個socket 程式, 其中 receive() 是用thread 來跑
> 此程式為client 端,他要接收來自server 端的文字訊息
> 而且也能發送文字訊息給 server
>
> 我想問一下,我的thread這樣寫,有問題嗎
> 因為我發現,我的receive() 不太會跑 (照常理應該是一直在run)
光是看 client 程式碼也很難猜,
因為 server 要是不發東西你的 receive() 自然會被 read() block 住,
不見得是 client 程式寫錯。
另外,
不建議你用 read/write 來取代 recv/send,
這會影響到你 C 程式的可攜性,
這不單只是那個 flags 參數有無的差異而已,
最重要的是,
有些 OS 會禁止使用 read/write 讀寫 socket。
--
Name: Tseng, Ling-hua E-mail Address:
[email protected]
School: National Tsing Hua University Department: Computer Science
Interesting: C++, Compiler, PL/PD, OS, VM, Large-scale software design
Researching: Undecided
Homepage:
https://it.muds.net/~uranus
--
╔═══╗ ┼────────────────────────╮
║狂狷 ║ │
* Origin:[ 狂 狷 年 少 ] whshs.cs.nccu.edu.tw ╰─╮
║ 年少║ ┼╮
< IP:140.119.164.252 > ╰─╮
╚╦═╦╝ ╰
* From:61-230-234-91.dynamic.hinet.net
─╨─╨─ KGBBS ─ ◎ 遨翔"BBS"的狂狷不馴;屬於年少的輕狂色彩 ◎