TKeed原始碼分析之讀寫資料

2021-09-26 18:59:07 字數 699 閱讀 6356

socket通訊的讀寫

ssize_t read(int fd, void *buf, size_t count)

ssize_t write(int fd, const void *buf, size_t count)

tcp資料讀寫
#include #include ssize_t recv(int sockfd,void *buf,size_t len,int flags);

//buf是緩衝區位址,len是緩衝區大小,flag通常設定為0

//讀取成功返回讀取資料的長度,讀取失敗返回0,這時對方可能已經關閉連線

//返回-1表示出錯,並設定errno

ssize_t send(int sockfd,const void *buf,size_t len,int flags);

//該函式往緩衝區buf寫資料,len是緩衝區大小

//寫成功返回實際寫入資料長度,失敗返回-1,並設定errno

通用讀寫資料函式,不僅用於tcp也可以用於udp

ssize_t recvmsg(int sockfd,struct msghdr *msg,int flags);

ssize_t sendmsg(int sockfd,struct msghdr *msg,int flags);

TKeed原始碼分析之新增listen監聽事件

前面初始化監聽套接字listen fd後,現在把它加入到epoll核心事件表當中。初始化套接字開始監聽 int listen fd socket bind listen conf.port 設定為socket非阻塞 int rc make socket non blocking listen fd ...

TKeed原始碼分析之監聽之後資料的接收與連線的關閉

遍歷events陣列,根據監聽種類及描述符型別分發操作 tk handle events epoll fd,listen fd,events,events num,conf.root,tp 分發處理函式 void tk handle events int epoll fd,int listen fd...

檔案系統原始碼分析之普通檔案讀寫

檔案讀寫主要是通過inode結構裡的資料,讀取或者寫入到底層的硬碟中,並更新相應的屬性。linux fs read write.c c 1991 linus torvalds include include include include include include extern intrw c...