一、同步与异步同步/异步, 它们是消息的通知机制1. 概念解释A. 同步所谓同步,就是在发出一个功能调用时,在没有得到结果之前,该调用就不返回。按照这个定义,其实绝大多数函数都是同步调用(例如sin isdigit等)。但是一般而言,我们在说同步、异步的时候,特指那些需要其他部件协作或者需要一定时间...
分类:
其他好文 时间:
2014-08-07 07:14:19
阅读次数:
254
nodejs越来越火了,网上经常能看到nodejs应用,如果不会运行个nodejs,感觉马上就要落伍了。之前了解过nodejs,最大特点是函数时编程,无阻塞,适用于高并发,通过js可以写服务器。正好看到一个nodejs的开源聊天室,就从搭建这个聊天室开始入门学习。...
分类:
Web程序 时间:
2014-08-06 23:00:12
阅读次数:
425
同步加载
在介绍js异步加载之前,我们先来看看什么是js同步加载。我们平时最常使用的就是这种同步加载形式:
同步模式,又称阻塞模式,会阻止浏览器的后续处理,停止了后续的解析,因此停止了后续的文件加载(如图像)、渲染、代码执行。一般的script标签(不带async等属性)加载时会阻塞浏览器,也就是说,浏览器在下载或执行该js代码块时,后面的标签不会被解析,例如在head中添加一...
分类:
Web程序 时间:
2014-08-06 22:58:02
阅读次数:
301
apue说到非堵塞要分析两种系统调用,低速的系统调用和其它的系统调用。那么低速的系统调用可能是进程堵塞。例如对不存在的数据进行读操作,可能是调用者永远阻塞,因为他得等读到了数据才返回;如果某个文件描述符拒绝某个写操作,写操作不能完成而阻塞;打开某些类型没有准备好的文件的文件也会引起阻塞;以及对强制性...
分类:
其他好文 时间:
2014-08-06 18:20:51
阅读次数:
165
pthread_cond_wait在把线程放进阻塞队列后,自动对mutex进行解锁(它内部有自己维护一个队列),使得其他线程可以获得加锁的权利。这样其它线程才能对临界资源进行访问并在适当的时候唤醒这个阻塞的进程。当pthread_cond_wait返回的时候又会自动给mutex加锁,所以最后需要一个...
分类:
其他好文 时间:
2014-08-06 18:05:42
阅读次数:
260
Android上面的很多操作是不能直接放在ui线程上面的。当ui线程被阻塞5秒以上的时候应用会出现未响应的对话框过。当此现象出现的时候会直接影响用户的用户体验的。所以我们需要通过方法对异步任务或者操作进行相关的处理。在这里罗列出集中相关的处理方法:首先我们最先想到的应..
分类:
移动开发 时间:
2014-08-05 22:52:40
阅读次数:
300
同步API,会阻塞: getaddrinfo: IPV4 and IPV6, linux依赖, windows依赖 gethostbyname: only IPV4 异步: libevent getaddrinfo_a, 会执行注册的callback函数, c-ares库,另...
分类:
其他好文 时间:
2014-08-05 10:57:59
阅读次数:
321
在C程序代码中我们可以利用操作系统提供的互斥锁来实现同步块的互斥访问及线程的阻塞及唤醒等工作。然而在Java中除了提供Lock API外还在语法层面上提供了synchronized关键字来实现互斥同步原语。那么到底在JVM内部是怎么实现synchronized关键子的呢?一、synchroniz.....
分类:
其他好文 时间:
2014-08-05 10:47:19
阅读次数:
386
一段synchronized的代码被一个线程执行之前,他要先拿到执行这段代码的权限,在java里边就是拿到某个同步对象的锁(一个对象只有一把锁);如果这个时候同步对象的锁被其他线程拿走了,他(这个线程)就只能等了(线程阻塞在锁池等待队列中)。取到锁后,他就开始执行同步代码(被synchronized...
分类:
编程语言 时间:
2014-08-05 00:00:48
阅读次数:
448
介绍
Jetty HTTP client模块提供易用的API、工具类和一个高性能、异步的实现来执行HTTP和HTTPS请求。
Jetty HTTP client模块要求Java版本1.7或者更高,Java 1.8的应用能用lambda表达式在一些HTTP client API中。
Jetty HTTP client被实现和提供一个异步的API,不会因为I/O时间阻塞,因此使它在线程的利用上更...
分类:
其他好文 时间:
2014-08-04 17:48:38
阅读次数:
383