- 博客(30)
- 收藏
- 关注
转载 15 io复用 函数用法
1.设置套接字为非阻塞模式 int fcntl(int fd,int cmd,long arg);2.初始化描述符集 void FD_ZERO(fd_set *fdset);3.将一个描述符添加到描述符集 void FD_SET(int fd, fd_set *fdset);4.将一个描述符从描述符集中删除 void FD_CLR(int fd, fd_set *fdse...
2019-05-25 12:28:16
166
转载 15 io复用
1.设置套接字为非阻塞模式 int fcntl(int fd,int cmd,long arg);2.初始化描述符集 void FD_ZERO(fd_set *fdset);3.将一个描述符添加到描述符集 void FD_SET(int fd, fd_set *fdset);4.将一个描述符从描述符集中删除 void FD_CLR(int fd, fd_set *fdse...
2019-05-25 12:27:50
132
转载 14UDP 函数用法
1.recvfrom()函数,从指定地址接收UDP数据报int recvfrom(int s, void *buf, int len, unsigned int flags, struct sockaddr *from, int *fromlen);成功则返回接收到的字符数,失败则返回-1成功则返回接收到的字符数,失败则返回-1s socket文件描述符buf UDP数据报缓存地址l...
2019-05-25 12:27:07
316
转载 14UDP
1.recvfrom()函数,从指定地址接收UDP数据报int recvfrom(int s, void *buf, int len, unsigned int flags, struct sockaddr *from, int *fromlen);成功则返回接收到的字符数,失败则返回-1成功则返回接收到的字符数,失败则返回-12.sendto函数。把UDP数据报发给指定地址int sen...
2019-05-25 12:26:43
116
转载 13TCP 函数用法
1.socket函数 int socket(int domain, int type,int protocol);成功时返回文件描述符,失败时返回-1domain:AF_INET ipv4通讯协议AF_INET6 ipv6AF_UNIX 只能够用于单一的Unix系统进程间通信type:SOCK_STREAM 流式套接字,唯一对应于TCPSOCK_DGRAM 数据包套接字,唯...
2019-05-25 12:26:15
136
转载 13TCP
#include<sys/types.h>#include<sys/socket.h>1.socket函数 int socket(int domain, int type,int protocol);成功时返回文件描述符,失败时返回-12.bind函数 int bind(int sockfd, struct sockaddr *my_addr, int ad...
2019-05-25 12:25:49
93
转载 12字节序 函数用法
1.主机字节序到网络字节序 u_long htonl (u_long hostlong); //32位u_short htons (u_short short); //16位htons()返回一个网络字节顺序的值2.网络字节序到主机字节序 u_long ntohl (u_long hostlong); //32位u_short ntons (u_short short); //1...
2019-05-25 12:25:23
209
转载 12字节序
#include<arpa/inet.h>1.主机字节序到网络字节序 u_long htonl (u_long hostlong);u_short htons (u_short short);htons()返回一个网络字节顺序的值2.网络字节序到主机字节序 u_long ntohl (u_long hostlong);u_short ntons (u_short shor...
2019-05-25 12:24:52
222
转载 11信号灯集 函数用法
1.创建信号灯集 int semget(key_t key,int nsems,int semflg);成功时返回信号灯的id,失败返回-1示例 semget(IPC_PRIVATE,3,0777);key 和消息队列关联的key IPC_PRIVATE或ftoknsems 集合中包含的计数信号灯的个数semflg 标志位 IPC_CREAT|0666 IPC...
2019-05-25 12:24:27
406
转载 11信号灯集
#include<sys/ipc.h>#include<sys/sem.h>1.创建信号灯集 int semget(key_t key,int nsems,int semflg);成功时返回信号灯的id,失败返回-12.控制信号灯集 int semctl(int semid,int semnum,int cmd,…);成功返回0,失败EOF3.信号灯PV操作...
2019-05-25 12:23:57
161
转载 10 消息队列 函数用法
1.创建消息队列 int msgget(key_t key;int msgflg);成功返回消息队列的id 失败EOF示例 int msgid;msgid=msgget(IPC_PRIVATE,0777);key 为和消息队列关联的key 私有的则为 IPC_PRIVATE ftok(多个进程同时通信)msgflg 标志位 IPC_CREAT|06662.发...
2019-05-24 08:57:02
259
转载 10消息队列
#include<sys/ipc.h>#include<sys/msg.h>1.创建消息队列 int msgget(key_t key;int msgflg);成功返回消息队列的id 失败EOF2.发送消息队列 int msgsnd(int msgid,const void *msgp,size_t size,int msgflg);成功返回0;失败EOF3...
2019-05-24 08:56:32
101
转载 09共享内存 函数用法
1.生成key值 key_t ftok(const char *path, int proj_id);成功返回合法key值,失败EOFpath 存在且可访问的文件的路径proj_id 用于生成key数字,不能为0proj_id是可以根据自己的约定,随意设置。这个数字,有的称之为project ID; 在UNIX系统上,它的取值是1到255;2.创建共享内存 int s...
2019-05-24 08:56:06
218
转载 09共享内存
#include<sys/types.h>#include<sys/ipc.h>#include<sys/shm.h>1.生成key值 key_t ftok(const char *path, int proj_id);成功返回合法key值,失败EOF2.创建共享内存 int shmget(key_t key,int size,int sh...
2019-05-24 08:55:30
92
转载 08信号函数用法
1.发送信号给任意进程 int kill(pid_t pid, int sig);成功0;失败EOF示例 kill(pid,9);pid: 正数,要接收信号的进程号;0,信号被发送到与pid进程相同的进程组中;-1,信号发送给所有的进程表中的进程sig: 信号2.发送给当前进程 int raise(int sig);成功0,错误-1示例 · raise(9);...
2019-05-24 08:55:02
296
转载 08信号
#include<unistd.h>#include<signal.h>1.发送信号给任意进程 int kill(pid_t pid, int sig);成功0;失败EOF2.发送给当前进程 int raise(int sig);成功0,错误-13.闹钟信号发送 unsigned int alarm(unsined int seconds);成...
2019-05-24 08:54:29
88
转载 07管道 函数用法
1.创建无名管道 int pipe(int fd[2]);成功返回0;失败返回EOF示例 int fd[2];ret=pipe(fd);fd包含两个元素的整形数组,用来保存文件描述符fd[0]读管道fd[1]写管道父进程创建无名管道,子进程继承write(fd[1],writebuf,sizeof(writebuf));read(fd[0],readbuf,128);...
2019-05-24 08:53:59
256
转载 07管道
#include<unistd.h>1.创建无名管道 int pipe(int fd[2]);成功返回0;失败返回EOF读写管道用write、read#include<unistd.h>#include<fcntl.h>2.创建有名管道 int mkfifo(const char *path,mode_t mode);成功返回0,失败E...
2019-05-24 08:53:30
82
转载 06进程 函数用法
1.创建一个新的进程 pid_t fork(void);成功时父进程返回子进程的进程号,子进程返回0,失败返回-1示例 pid_t pid1; pid1 = fork();2.结束一个进程,并刷新(流)缓冲区 void exit(int status); status 是一个整型的参数,可以利用这个参数传递进程结束时的状态。一般来说,0表示正常结束;其他的数...
2019-05-24 08:52:49
132
转载 06进程
#include<unistd.h>#include<stdilb.h>#include <sys/types.h>1.创建一个新的进程 pid_t fork(void);成功时父进程返回子进程的进程号,子进程返回0,失败返回-12.结束一个进程,并刷新(流)缓冲区 void exit(int status);3.结束一个进程,不刷新(...
2019-05-24 08:52:14
103
转载 05线程通信——互斥锁 函数用法
#include<pthread.h>-D_LOCK_ 要用这个1.创建一个互斥锁 int pthread_mutex_init(ptread_mutex_t *mutex,const pthread_mutexattr_t *attr);成功返回0;失败EOF示例 pthread_mutex_init(&lock,NULL);mutex 指向要初始化的互斥...
2019-05-23 12:48:42
181
转载 05线程通信——互斥锁
1.创建一个互斥锁 int pthread_mutex_init(ptread_mutex_t *mutex,const pthread_mutexattr_t *attr);成功返回0;失败EOF2.申请一个互斥锁 int pthread_mutex_lock(ptread_mutex_t *mutex);成功返回0;失败EOF3.释放一个互斥锁 int pthread_mu...
2019-05-23 12:48:10
134
转载 04线程通信——信号量 函数用法
1.创建信号量 int sem_init(sem_t *sem,int pshared,unsigned int value):执行成功返回0,失败EOF示例 sem_init(&sem, 0, 0);sem 指向要初始化的信号量对象,传地址pshared 0——线程间使用 ,1——进程间使用val 信号量初值2.P操作 int sem_wait...
2019-05-23 11:18:53
259
转载 04线程通信——信号量
#include<semaphore.h>1.创建信号量 int sem_init(sem_t *sem,int pshared,unsigned int value):执行成功返回0,失败EOF2.P操作 int sem_wait(sem_t *sem);成功返回0,失败EOF3.V操作 int sem_post(sem_t *sem);成功返回0,失败E...
2019-05-23 11:18:15
230
转载 03线程 函数用法
1.创建线程 int pthread_create(pthread_t *thread,const pthread_attr_t *attr,void *(*routine)(void *),void *arg);成功时返回0,失败时返回错误码示例 pthread_create(&id_2,NULL,(void *) thread_2,NULL);thread: 线程标...
2019-05-23 11:15:00
116
转载 03线程
#include<pthread.h>编译加 gcc -o test test.c -lpthread1.创建线程 int pthread_create(pthread_t *thread,const pthread_attr_t *attr,void *(*routine)(void *),void *arg);成功时返回0,失败时返回错误码2.线程回收 int pt...
2019-05-23 11:14:18
66
转载 02文件io 函数用法
1.在指定位置打开一个文件 int open(const char *path,int oflag,…);成功时返回文件描述符,错误EOF示例 open(“1.txt”,O_WRONLY|O_CREAT|TRUNC,0666)以只写方式打开1.txt,不存在创建,存在清空path 文件路径oflag 打开方式O_RDONLY 只读方式打开文件O_WRONLY 可写方...
2019-05-23 11:13:34
155
转载 02文件io
#include<fcntl.h>#include<unistd.h>1.在指定位置打开一个文件 int open(const char *path,int oflag,…);成功时返回文件描述符,错误EOF2.关闭文件 int close(int fd);成功返回0;出错EOF3.读取文件 ssize_t read(in...
2019-05-23 11:12:30
88
转载 01标准io流 函数用法
1.打开流: FILE *fopen (const char *path, const char *mode);成功时返回流指针;出错时返回NULL示例 fopen(“test.txt”,“r+”);path 文件路径mode 打开方式r: 可读、文件必须已经存在r+: 可读、可写、文件必须已经存在w: 可写、文件可以不存在、擦除文件以前的内容w+: 可读、可写、...
2019-05-23 10:59:58
188
转载 01标准io流
#include<stdio.h>1.打开流: FILE *fopen (const char *path, const char *mode);成功时返回流指针;出错时返回 NULL2.关闭流: int fclose(FILE *stream);成功返回0,失败返回EOF3.读一个字符: int fgetc(FILE *stream)成功时返回所读取的...
2019-05-23 10:57:03
238
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人