V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
52coder
V2EX  ›  程序员

c/c++网络库源码推荐

  •  
  •   52coder · Sep 9, 2020 · 5547 views
    This topic created in 2058 days ago, the information mentioned may be changed or developed.

    之前在 V2EX 发过贴,有收集一波 https://v2ex.com/t/605937#reply37, 老弟也没看哈哈哈哈,疫情期间学了 c 简单过了一遍网络编程 apue,希望能找一个短小精悍,适合深入阅读学习的开源代码,主要学习网络 进程间通信 ipc 等,老弟自己搜索找到一个库,https://github.com/acl-dev/acl 有看过这个源码的没,各位大佬有没有更好的推荐。

    26 replies    2020-09-14 11:17:21 +08:00
    lbmjsls1
        1
    lbmjsls1  
       Sep 9, 2020
    libevent 和 libuv,看一个就够了,我在看 libevent
    guonaihong
        2
    guonaihong  
       Sep 9, 2020
    c/c++的细节太多了,看的时候有种只见树叶不见树干的感觉。如果一定要选择 c/c++,可以试下 libev,代码相对少点。
    52coder
        3
    52coder  
    OP
       Sep 9, 2020
    @lbmjsls1 acl 那个有了解么,看着也还可以?
    paoqi2048
        4
    paoqi2048  
       Sep 9, 2020
    52coder
        5
    52coder  
    OP
       Sep 9, 2020
    @guonaihong 感谢推荐,有比 livevent 简单点的没,担心老弟看不懂呀,哈哈哈
    lbmjsls1
        6
    lbmjsls1  
       Sep 9, 2020
    @52coder 当时找网络库都了解看过,我感觉最好入门的就是 libevent 了,可以到管网看一下,好多项目在用。网路库主要是看个平台异步网络接口如何实现。我是为了看一下 epoll 有什么陷阱和借鉴,因为公司项目是 iocp,已经玩的差不多了,准备把项目移植到 linux 下
    lbmjsls1
        7
    lbmjsls1  
       Sep 9, 2020
    acl 不必 libevent 简单。更复杂的可以看一下 niginx,不过网路学习还是要自己做东西。主要是异常链接断开的处理。tcp 的粘包,什么 10053 10054 的错误
    waruqi
        8
    waruqi  
       Sep 9, 2020 via Android
    tbox 里面也有协程和网络相关的库 c 库 也是跨平台的 https://github.com/tboox/tbox ,里面的协程支持 epoll poll select kqueue 甚至 win iocp 的调度,除了 socket,还有 pipe 和 进程调度也同时支持
    BBCCBB
        9
    BBCCBB  
       Sep 9, 2020
    貌似 redis 的网络实现比较简单, 可以研究一下, 我没看过, 不怎么会 c..
    timsensor
        10
    timsensor  
       Sep 9, 2020 via Android
    asio
    asuraa
        11
    asuraa  
       Sep 9, 2020
    我用的 poco 建议看看 poco 真正的现代 cpp
    当然 boost asio 也不错
    GBdG6clg2Jy17ua5
        13
    GBdG6clg2Jy17ua5  
       Sep 9, 2020 via iPhone
    建议不要看,直接做项目
    momo1999
        14
    momo1999  
       Sep 9, 2020
    asio 吧,听说以后就是 C++标准
    CareiOS
        15
    CareiOS  
       Sep 9, 2020
    asio+1
    MeteorCat
        16
    MeteorCat  
       Sep 9, 2020 via Android
    moduo
    turi
        17
    turi  
       Sep 9, 2020
    asio+1


    确实 c++标准都从 boost 里面扒了好多内容
    Tony042
        18
    Tony042  
       Sep 9, 2020
    muduo
    52coder
        19
    52coder  
    OP
       Sep 9, 2020
    @Tony042 这个看豆瓣评价,好评和恶评都有的哇
    52coder
        20
    52coder  
    OP
       Sep 9, 2020
    @BBCCBB 恩,确实 redis 这个之前我写 c 的时候还从里面抄过代码
    wzzzx
        21
    wzzzx  
       Sep 9, 2020
    @52coder #19 我觉得 muduo 这样库就挺不错的,还有专门一本书将实践。能搞懂 muduo 的人,肯定不差,你说呢
    zhuangzhuang1988
        22
    zhuangzhuang1988  
       Sep 9, 2020
    @guonaihong
    的确, 可以试试看 tornado 的代码试试.
    python 的代码, c++的太多杂乱了.
    PUBG98k
        23
    PUBG98k  
       Sep 10, 2020
    livepps
        24
    livepps  
       Sep 10, 2020
    asio +1
    DCounter
        25
    DCounter  
       Sep 14, 2020
    "疫情期间学了 c 简单过了一遍网络编程 apue" 这是花了多少时间啊,学到啥程度了啊?
    52coder
        26
    52coder  
    OP
       Sep 14, 2020
    @DCounter 北邮大三,有点基础,之前兴趣点在前端,现在对 c/c++也感兴趣了。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   938 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 69ms · UTC 20:26 · PVG 04:26 · LAX 13:26 · JFK 16:26
    ♥ Do have faith in what you're doing.