
网络
文章平均质量分 74
qwer_boo
这个作者很懒,什么都没留下…
展开
-
sockaddr与sockaddr_in结构体简介
struct sockaddr {unsigned short sa_family; /* address family, AF_xxx */char sa_data[14]; /* 14 bytes of protocol address */};sa_family是地址家族,一般都是“AF_xxx”的形式。好像通常大多用的是都是AF转载 2012-02-10 16:28:26 · 536 阅读 · 0 评论 -
poll之客户端与服务端聊天
poll客户端与服务端聊天原创 2015-07-18 11:52:12 · 614 阅读 · 0 评论 -
epoll处理多连接
#include #include #include #include #include #include #include #include #include #include #include #define MAXEVENTS 1024#define BUF_SIZE 100//set this descriptor non blockingstatic in转载 2015-07-20 16:25:09 · 1095 阅读 · 0 评论 -
相关函数(暂存)
以下所述服务既可以是十进制端口数值,也可以是ftp,http,domain等。因为不同特定服务对应不同的端口。gethostbyname函数通过查询DNS服务器用主机名来获得主机IPv4地址。#include struct hostent *gethostbyname(const char *hostname);struct hostent{char *h_name; /*o原创 2015-07-22 21:36:59 · 436 阅读 · 0 评论 -
共享内存区
Posix提供了无亲缘关系进程间共享内存区的两种方法:1.内存映射文件 由open函数打开,由mmap函数把得到的描述字映射到当前进程地址空间的一个文件。#include void *mmap(void *addr, size_t len, int prot, int flags, int fd, off_t offset); addr可以指定为描述字fd应被映射到的进程内空间起原创 2015-08-21 19:37:28 · 738 阅读 · 0 评论 -
读写锁
读写锁和互斥量(互斥锁)很类似,是另一种线程同步机制,但不属于POSIX标准,可以用来同步同一进程中的各个线程。当然如果一个读写锁存放在多个进程共享的某个内存区中,那么还可以用来进行进程间的同步, 和互斥量不同的是:互斥量会把试图进入已保护的临界区的线程都阻塞;然而读写锁会视当前进入临界区的线程和请求进入临界区的线程的属性来判断是否允许线程进入。 相对互斥量只有加锁和不加锁两种状态,读原创 2015-08-21 20:00:41 · 604 阅读 · 0 评论 -
epoll之ET与LT模式
在使用epoll时,在函数 epoll_ctl中如果不设定,epoll_event 的event默认为LT(水平触发)模式。使用LT模式意味着只要fd处于可读或者可写状态,每次epoll_wait都会返回该fd,这样的话会带来很大的系统开销,且处理时候每次都需要把这些fd轮询一遍,如果fd的数量巨大,不管有没有事件发生,epoll_wait都会触发这些fd的轮询判断。转载 2015-07-20 16:45:11 · 590 阅读 · 0 评论