死锁是两个或更多线程阻塞着等待其它处于死锁状态的线程所持有的锁。死锁通常发生在多个线程同时但以不同的顺序请求同一组锁的时候。 例如,如果线程1锁住了A,然后尝试对B进行加锁,同时线程2已经锁住了B,接着尝...
分类:
其他好文 时间:
2015-10-09 15:40:59
阅读次数:
186
前面第五篇(一)中的一个Socket例子其实就是单线程的,即Server端一次只能接受来自一个Client端的连接,为了更好的说明socket单线程和阻塞模式,下面对前面的例子做修改。1.单线程+阻塞+交互式前面的例子是单线程阻塞和非交互式的,现在改写为交互式的,即不会执行一次就结束..
分类:
编程语言 时间:
2015-10-03 19:32:51
阅读次数:
287
NIO 的工作方式 BIO 带来的挑战 BIO 即阻塞 I/O,不管是磁盘 I/O 还是网络 I/O,数据在写入 OutputStream 或者从 InputStream 读取时都有可能会阻塞。一旦有线程阻塞将会失去 CPU 的使用权,这在当前的大规模访问...
分类:
编程语言 时间:
2015-09-24 13:02:27
阅读次数:
263
每个锁对象都有两个队列,一个是就绪队列,一个是阻塞队列,就绪队列存储了将要获得锁的线程,阻塞队列存储了被阻塞的线程,当一个被线程被唤醒 (notify)后,才会进入到就绪队列,等待获得锁。当一开始线程a第一次执行account.add方法时,jvm会检查锁对象account 的就绪队列是否已经有线程...
分类:
其他好文 时间:
2015-09-23 16:46:41
阅读次数:
285
1 #import "ILViewController.h" 2 3 @interface ILViewController () 4 5 @end 6 7 @implementation ILViewController 8 9 - (void)viewDidLoad10 {11 ...
分类:
编程语言 时间:
2015-09-18 01:55:01
阅读次数:
139
本文承接上一篇文章《Java总结篇系列:Java多线程(一)》。四.Java多线程的阻塞状态与线程控制上文已经提到Java阻塞的几种具体类型。下面分别看下引起Java线程阻塞的主要方法。1.join()join —— 让一个线程等待另一个线程完成才继续执行。如A线程线程执行体中调用B线程的join(...
分类:
编程语言 时间:
2015-09-10 19:27:28
阅读次数:
164
该BLOG内容是之前在部门组织讨论运行时问题时自己写的PPT内容,内容以点带面,主要是方便以后自己回顾查看。大纲包括:1、运行时问题分类 2、服务器自带工具 3、其他工具 4、例子 5、实际情况运行时问题分类-软件角度:1、内存泄漏,对象未释放 2、线程阻塞、死锁 3、线程死循环 4、网络IO连接超...
分类:
编程语言 时间:
2015-09-10 10:58:14
阅读次数:
229
前言:移动互联网时代,网络通信已经是手机端必不可少的功能。应用中也必不可少地使用了网络通信,增强客户端与服务器交互。使用NSURLConnection实现HTTP的通信。NSURLConnection 提供了异步请求和同步请求两种通信方式。同步请求数据会造成主线程阻塞,通常在请求大数据或网络不通畅时...
分类:
移动开发 时间:
2015-09-04 07:28:31
阅读次数:
211
基于浏览器内核的被动式爬虫任务下发框架
现有基于浏览器的客户端测试框架通过ChromeDriver这类组件来主动控制,但主动控制有缺点:
重新load下一个页面时,上一个页面可能仍有JS代码在执行,或者网络层的连接阻塞、UI线程阻塞什么的;通过WebView接口注入执行的JS代码可能因为各种情况意外出错,出错的话无法获得通知无法可靠地向浏览器查询,获得当前任务是否已经执行完...
分类:
其他好文 时间:
2015-08-26 18:00:43
阅读次数:
340
利用线程阻塞方式,和软引用,以及图片缓存,以及实现listview滑动监听来处理图片的下载操作...
分类:
其他好文 时间:
2015-08-21 23:20:24
阅读次数:
208