众所周知,在Linux系统下所有设备都是以文件的形式存在,串口也一样。 通常I/O操作都是有阻塞与非阻塞的两种方式。 其中"超时"这个概念其实是阻塞中的一种处理手段,本质还是属于阻塞的I/O模式. 在Linux中串口的I...
分类:
系统相关 时间:
2014-08-13 22:43:18
阅读次数:
532
第四章 并行程序优化4.1 并行程序设计模式4.2 JDK多任务执行框架4.3 JDK并发数据结构4.4 并发控制方法4.5 锁的性能和优化4.6 无锁的并行计算1.非阻塞同步避免了基于锁的同步的缺陷,无锁算法没有锁竞争带来的系统开销,也没有线程间频繁调度带来的开销。CAS算法:包含3个参数CAS(...
分类:
编程语言 时间:
2014-08-13 18:42:26
阅读次数:
196
在Linux环境下开发经常会碰到很多错误(设置errno),其中EAGAIN是其中比较常见的一个错误(比如用在非阻塞操作中)。 从字面上来看,是提示再试一次。这个错误经常出现在当应用程序进行一些非阻塞(non-blocking)操作(对文件或socket)的时候。例如,以 O_NONBLOCK...
分类:
系统相关 时间:
2014-08-11 23:49:02
阅读次数:
293
iPhone的标准推荐是CFNetwork 库编程,其封装好的开源库是 cocoa AsyncSocket库,用它来简化CFNetwork的调用,它提供了异步操作主要特性有: 队列的非阻塞的读和写,而且可选超时。你可以调用它读取和写入,它会当完成后告知你自动的socket接收。如果你调用它接收连接,...
分类:
移动开发 时间:
2014-08-11 21:11:52
阅读次数:
416
无锁编程以及CAS
无锁编程 / lock-free / 非阻塞同步
无锁编程,即不使用锁的情况下实现多线程之间的变量同步,也就是在没有线程被阻塞的情况下实现变量的同步,所以也叫非阻塞同步(Non-blocking Synchronization)。
实现非阻塞同步的方案称为“无锁编程算法”( Non-blocking algorithm)。
lock-free是目前最...
分类:
其他好文 时间:
2014-08-11 11:58:42
阅读次数:
321
参考:http://zyan.cc/nginx_php_v6/nginx相对于apache的优点:1.轻量级,同样的web 服务,比apache服务器占用更少的内存及资源2.抗并发,nginx在处理请求是异步非阻塞的(epoll),而apache 则是阻塞型的(select),在高并发下nginx ...
分类:
其他好文 时间:
2014-08-10 21:04:30
阅读次数:
227
JavaScript 倾向于阻塞浏览器某些处理过程,如HTTP 请求和界面刷新,这是开发者面临的最显著的性能问题。保持JavaScript文件短小,并限制HTTP请求的数量,只是创建反应迅速的网页应用的第一步。一个应用程序所包含的功能越多,所需要的JavaScript 代码就越大,保持源码短小并不总...
分类:
编程语言 时间:
2014-08-08 12:16:55
阅读次数:
309
再补一篇高手写的理论分析,便于更深刻理解转自:http://blog.csdn.net/historyasamirror/article/details/5778378=============================================================同步(sy...
分类:
其他好文 时间:
2014-08-07 22:56:15
阅读次数:
261
一、同步与异步同步/异步, 它们是消息的通知机制1. 概念解释A. 同步所谓同步,就是在发出一个功能调用时,在没有得到结果之前,该调用就不返回。按照这个定义,其实绝大多数函数都是同步调用(例如sin isdigit等)。但是一般而言,我们在说同步、异步的时候,特指那些需要其他部件协作或者需要一定时间...
分类:
其他好文 时间:
2014-08-07 07:14:19
阅读次数:
254
一、同步与异步同步/异步, 它们是消息的通知机制1. 概念解释A. 同步所谓同步,就是在发出一个功能调用时,在没有得到结果之前,该调用就不返回。按照这个定义,其实绝大多数函数都是同步调用(例如sin isdigit等)。但是一般而言,我们在说同步、异步的时候,特指那些需要其他部件协作或者需要一定时间...
分类:
其他好文 时间:
2014-08-04 13:49:07
阅读次数:
229