知识储备
chunzhilian0126
http://blog.csdn.net/chunzhilian0126
展开
-
【Linux多线程】同步与互斥的区别
同步与互斥这两个概念经常被混淆,所以在这里说一下它们的区别。 一、同步与互斥的区别 1. 同步 同步,又称直接制约关系,是指多个线程(或进程)为了合作完成任务,必须严格按照规定的 某种先后次序来运行。 例如,线程 T2 中的语句 y 要使用线程 T1 中的语句 x 的运行结果,所以只有当语句 x 执行完成之后语句 y 才可以执行。我们可以使用信号量进行同步: semaph转载 2017-06-01 21:06:37 · 293 阅读 · 0 评论 -
linux下recv 、send阻塞、非阻塞区别和用法
非阻塞IO 和阻塞IO: 在网络编程中对于一个网络句柄会遇到阻塞IO 和非阻塞IO 的概念, 这里对于这两种socket 先做一下说明: 基本概念: 阻塞IO:: socket 的阻塞模式意味着必须要做完IO 操作(包括错误)才会转载 2017-06-15 11:44:26 · 419 阅读 · 0 评论 -
linux socket学习(一)
大纲 一.Socket简介二.BSD Socket编程准备 1.地址2.端口3.网络字节序4.半相关与全相关5.网络编程模型 三.socket接口编程示例四.使用select五.使用kqueue六.使用流 一.Socket简介 在UNIX系统中,万物皆文件(Everything is a file)。所有的IO操作都可以看作对文件的IO操作,都转载 2017-06-15 11:45:32 · 334 阅读 · 0 评论 -
linux socket学习(二)
四.使用select select这个系统调用,是一种多路复用IO方案,可以同时对多个文件描述符进行监控,从而知道哪些文件描述符可读,可写或者出错,不过select方法是阻塞的,可以设定超时时间。 select使用的步骤如下: 1.创建一个fd_set变量(fd_set实为包含了一个整数数组的结构体),用来存放所有的待检查的文件描述符2.清空fd_set变量,并将需要检查的所有文件描述转载 2017-06-15 11:56:40 · 382 阅读 · 0 评论