FTP 小结

多线程FTP:

  •  以线程为单位来处理socket连接,每个线程单独维护一个当前目录变量(线程局部变量)。Linux中的实现是以pthread_key_t作为全局键来映射到每个线程的局部变量(内里的细节就是映射到线程局部变量的地址
  • socket上的每个I/O流程分解为单独的函数,以socket fd为参数
  • 为NULL的fp和-1的fd,不用fclose()和close()
  • fgets会读取’\n’,也需要读取'\n',同时client端负责过滤输入的字符串,之后再发送,server端可不用过滤
  • 同一端必须全用同一种socket Input函数,和同一种socket Output函数,不要read()和fread()混用
  • fwrite()之后需要fflush()才能将内容write到TCP缓冲区中

转载于:https://my.oschina.net/u/3281747/blog/3001130

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值