进程通常分为就绪、运行和阻塞三个工作状态。三种状态在某些条件下可以转换,三者之间的转换关系如下:进程三个状态之间的转换就是靠PV操作来控制的。PV操作主要就是P操作、V操作和信号量。其中信号量起到了至关重要的作用。信号量信号量是最早出现的用来解决进程同步与互斥问题的机制。 信号量(Saphore)由...
分类:
其他好文 时间:
2014-07-22 23:06:35
阅读次数:
343
NIONIO与IO主要的区别区别见下表:IONIO面向流(输入流/输出流)面向缓冲区(各种缓冲区,除了布尔类型之外其他的基本数据类型都有缓冲区跟其对应)阻塞IO非阻塞IO无选择选择器流与缓冲区
IO面向流,NIO面向缓冲区,面向流意味着每次从流中读取一个字节或多个字节,直到把所有字节读完,没有缓冲....
分类:
编程语言 时间:
2014-05-01 10:55:05
阅读次数:
416
CountDownLatch
类是一个倒计时计数器,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。用给定的计数初始化
CountDownLatch。由于调用了countDown() 方法,所以在当前计数到达零之前,await
方法会一直受阻塞。之后,会释放所有等待的线程,aw...
分类:
编程语言 时间:
2014-05-01 08:21:22
阅读次数:
485
JDK1.5提供了阻塞队列接口BlockingQueue,它是一个有界阻塞队列。BlockingQueue实现是线程安全的,可以安全地与多个生产者和多个使用者一起使用。使用时用其实现类ArrayBlockingQueue,它一个由数组支持的有界阻塞队列。此队列按
FIFO(先进先出)原则对元素进行排...
分类:
编程语言 时间:
2014-05-01 06:58:46
阅读次数:
373
本文转载自:http://kamiff.iteye.com/blog/507129最近一直在搞Windows服务,也有了不少经验,感觉权限方面确定比一般程序要受限很多,但方便性也很多。像后台运行不阻塞系统,不用用户登录之类。哈
哈,扯远了,今天讲一下那个怎么给Windows服务做个安装包。为什么做安...
.net
4.5已经发布很久了,但是一直也没有静下心来好好的研究微软给开发者带来的喜悦。今天我将简单的介绍下 async + await
这对搭档的出现,如何让频繁假死的界面飞起来(其实只是不再阻塞UI线程而已,标题党一下)建议大家先了解下 IAsyncReuslt
,做过异步的应该都知道它怎么用吧...
分类:
其他好文 时间:
2014-04-29 21:08:41
阅读次数:
516
不知道前主程是处于什么目的,总之我接手这套程序的时候,出现了超级多的问题,也发现了超级多的问题。
比如说吧,接受网络消息逻辑是线程独立的,而发送消息给客户端缺阻塞在了逻辑线程里面;原本可以放在一个进程里面处理的逻辑,却分散在了四个进程里面去处理,导致我完成一个功能,大部分时间要话费了进程之间...
分类:
其他好文 时间:
2014-04-29 16:48:52
阅读次数:
491
Winform中子线程访问界面控件时被阻塞解决方案
分类:
编程语言 时间:
2014-04-29 16:24:47
阅读次数:
365
1.什么是阻塞队列?所谓队列,遵循的是先进先出原则(FIFO),阻塞队列,即是数据共享时,A在写数据时,B想读同一数据,那么就将发生阻塞了.看一下线程的四种状态,首先是新创建一个线程,然后,通过start方法启动线程--->线程变为可运行可执行状态,然后通过数据产生共享,线程产生互斥---->线程状...
分类:
编程语言 时间:
2014-04-28 12:18:12
阅读次数:
513
Cobar启动完成,监听特定端口。整个认证的流程图:NIOAcceptor类继承自Thread类,该类的对象会以线程的方式运行,进行连接的监听。NIOAcceptor启动的初始化过程如下:1 、打开一个selector,获取一个ServerSocketChannel对象,对该对象的socket绑定特定的监听端口,并设置该channel为非阻塞模式,然后想selector注册该channel,绑定感...
分类:
数据库 时间:
2014-04-27 21:47:07
阅读次数:
462