
操作系统
灵山一笑
这个作者很懒,什么都没留下…
展开
-
strtok的安全函数
strtok用来做字符串分割。 strtok(char * str,const char * delim) 该函数调用一次,返回由delim分割的一部分字符串,需要多次调用,把所有的分割结果都返回出来。 可以看出,函数内部需要维护一个静态内存区域,因此不可重入。 基于不可重入的问题,就有了对应的安全函数,如下: windows版:strtok_s(char* s, const char* d...原创 2019-10-17 11:22:37 · 857 阅读 · 0 评论 -
Linux下的IO模式
阻塞模式(block):程序在执行某一项IO的系统调用时,处于阻塞状态,等待IO操作返回后,才能继续向下执行。例如: length = recvfrom(data, max_length);当没有网络数据到来时,程序就会阻塞在这里,直到有数据到来为止。 非阻塞模式(non-block):程序在执行某一项IO的系统调用时,该系统调用立即返回。length = recvfrom(data, max_l...原创 2018-07-07 11:11:46 · 477 阅读 · 0 评论 -
IO -- select方式-epoll方式
一个典型的select的工作流程://定义 文件描述符集合,一个是read, 一个是writefd_set fd_in, fd_out;struct timeval tv; // 情况集合信息FD_ZERO( &fd_in );FD_ZERO( &fd_out ); // 将sock1加入到读监控集合中FD_SET( sock1, &fd_in ); // 将sock2加入...原创 2018-07-07 18:11:29 · 286 阅读 · 0 评论