• 旅行的目光

    前言里面提到的代码已经被作者删掉了,╮( ̄▽ ̄”)╭,源代码已经没救了

    旅行的目光发表于 2019/7/18 11:12:25
    • Mac_J

      源码一直在,没有动过,地址是:https://gitee.com/Mac_J/projects
      在列表中找到 mac-rpc 项目即可(直接地址:https://gitee.com/Mac_J/mac-rpc)

      Mac_J发表于 2019/7/18 11:24:13
  • 寻找艾伦

    书中有写具体的地址??????!!????请指出具体的地址在哪一页,哪一行??

    寻找艾伦发表于 2019/7/15 22:40:27
    • 陈晓猛

      前言里有写

      陈晓猛发表于 2019/7/16 8:10:05
    • 旅行的目光

      @陈晓猛 你就别误导大家了,根本没有源代码,博文和作者的gitee全删掉了,大家散了吧

      旅行的目光发表于 2019/7/18 11:13:52
    • 陈晓猛

      @旅行的目光 源码一直在,没有动过,地址是:https://gitee.com/Mac_J/projects
      在列表中找到 mac-rpc 项目即可(直接地址:https://gitee.com/Mac_J/mac-rpc)

      陈晓猛发表于 2019/7/18 11:25:02
  • hwd

    在第89页中,代码注释说:收到的消息可能发生了粘包,包含多条消息(但不会只有半条)。请问为什么不会出现只有半条消息的情况?

    hwd发表于 2019/6/22 17:15:30
    • Mac_J

      因为前面的while循环中会判断收到的字符串必须以\n结尾才会退出当前循环。

      Mac_J发表于 2019/7/13 12:39:23
  • SpecialYang

    本书的文件传输示例,p78页是错误的。

    因为服务端采用的是NIO模型,在处理就绪的读事件时,只是读取了当前socket的读缓冲区,若客户端发送的文件很大时,其实这里只是读了一部分文件。书中代码在从channel读完数据时,直接注册写事件发ok是不对的。因为这时服务端在一次select时可能没有读取全部文件数据,之后的写事件处理发ok,然后关闭socket。客户端由于数据没发完,还会继续发送文件数据,但此时对端已经关闭socket,就会出错。 不信,你可以运行代码读取一个1G的文件试试。正常的做法,还是发送文件前,告诉服务端这次文件的大小,服务端只有在读到给定长度的字节后,才注册写事件,向客户端发ok。

    修正后的代码仓库为:https://github.com/SpecialYy/NIO-File-Transfer

    SpecialYang发表于 2019/6/9 16:38:46
    • Mac_J

      这个例子确实有误,不够严谨,感谢指正!

      Mac_J发表于 2019/6/10 11:41:22
  • dy18

    没有下载地址,有那么难吗?

    dy18发表于 2019/6/7 23:41:36
    • 陈晓猛

      请仔细阅读前言

      陈晓猛发表于 2019/6/10 8:54:19
    • 旅行的目光

      @陈晓猛 你就别误导大家了,根本没有源代码,博文和作者的gitee全删掉了,大家散了吧

      旅行的目光发表于 2019/7/18 11:14:14
    • Mac_J

      @旅行的目光 永久开源,不会删除的,https://gitee.com/Mac_J/projects

      Mac_J发表于 2019/7/18 11:26:29
  • 1
  • 2
  • 3
  • 4
  • 5