看板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"的狂狷不驯;属於年少的轻狂色彩 ◎