V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Coding.NET 轻量级社交
开源项目广场
使用帮助
意见反馈
esolve
V2EX  ›  Coding

大家做 linux c/c++网络编程时,啥时用到多线程或者多进程啊?

  •  
  •   esolve · 2016-12-13 13:07:29 +08:00 · 2749 次点击
    这是一个创建于 2893 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我怎么感觉一般单进程单线程就能应付了 大家多线程难道是有的线程 /进程去处理 GUI ,数据库啥的了?

    6 条回复    2016-12-24 01:52:53 +08:00
    tigerstudent
        1
    tigerstudent  
       2016-12-13 14:16:57 +08:00 via Android
    小学生问题
    harry890829
        2
    harry890829  
       2016-12-13 14:28:19 +08:00
    网络编程……你不多线程 /多进程的话, server 怎么处理多 client 同时的访问请求?
    t6attack
        3
    t6attack  
       2016-12-13 14:32:51 +08:00
    这不用程序员,一个熟练网民 或者 业余小黑客 就能回答你。
    让你扫描一个 IP 段,有那些存活主机,都开了哪些端口,你怎么做?
    esolve
        4
    esolve  
    OP
       2016-12-17 18:22:29 +08:00
    @harry890829 多路复用啊, libevent 之类的
    没有用到多线程 /多进程啊
    你不可能为每一个 TCP 连接都开一个线程吧,那开销也太大了
    应该是有几个 CPU core 就开几个线程
    harry890829
        5
    harry890829  
       2016-12-18 17:50:02 +08:00
    @esolve 呃,我怎么感觉你对线程的理解有点问题,程序的线程和 cpu 的线程性质不一样啊
    esolve
        6
    esolve  
    OP
       2016-12-24 01:52:53 +08:00
    @harry890829 没懂你在说啥。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1033 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 22:06 · PVG 06:06 · LAX 14:06 · JFK 17:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.