outline
- 线程
- I/O多路转接
- 文件描述符的传送
- 网络编程
- 内存学习
线程
基本函数:
pthread_create()
pthread_exit()
pthred_join()
pthread_cleanup_push()
pthread_cleanup_pop()线程的互斥:互斥锁 mutex
pthread_mutex_init()
pthread_mutex_destroy()
pthread_mutex_lock()
pthread_mutex_unlock()
pthread_mutex_trylock()线程的同步:条件变量 cond
pthread_cond_inti()
pthread_cond_wait() pthread_cond_timedwait()
pthread_cond_signal() pthread_cond_broadcast()
I/O多路转接
- select()
- poll()
- epoll:
epoll_create()
epoll_ctl()
epoll_wait()
ET模式
文件描述符的传递
- socketpair()
- sendmsg() recvmsg()
- writev() readv()
网络编程 socket
网络模型:
TCP/IP 四层模型网络字节序转换:
htons() htonl() ntohs() ntohl()域名地址转换:
inet_addr() inet_aton() inet_ntoa()获得网络主机信息:
gethostbyname()
gethostbyaddr()TCP通信:
server : socket->bind->listen->accept->recv->send->close
client : socket->connect->recv->send->close练习:
-多客户端的c/s模型:多进程实现,多线程实现
-非阻塞形式的c/s模型:fcntl() select() epoll()
内存学习
- 菜鸟成长手册:详解内存工作原理及发展历程