码迷,mamicode.com
首页 >  
搜索关键字:阻塞 非阻塞    ( 9115个结果
JDK源码分析—— ArrayBlockingQueue 和 LinkedBlockingQueue
目的:本文通过分析JDK源码来对比ArrayBlockingQueue 和LinkedBlockingQueue,以便日后灵活使用。 1. 在Java的Concurrent包中,添加了阻塞队列BlockingQueue,用于多线程编程。BlockingQueue的核心方法有: * boolean add(E e) ,把 e 添加到BlockingQueue里。如果BlockingQueue可以容纳,则返回true,否则抛出异常。 * boolean offer(E e),表示如果可能的话,将 e 加...
分类:数据库   时间:2014-05-22 12:19:23    阅读次数:442
一种基于Qt的可伸缩的全异步C/S架构服务器实现(三)
为了无阻塞地实现并发通信及处理,设计了一种流水线线程池模式。流水线结构保证了各个客户工作在大粒度上并行化,线程池技术保证了处理器资源的最大利用,可以显著提高系统的吞吐能力。另一个附加好处,是可以让VIP获得高级优先级。...
分类:其他好文   时间:2014-05-22 10:14:58    阅读次数:356
Linux环境编程之高级I/O(一):非阻塞I/O、记录锁
引言:高级I/O包括非阻塞I/O、记录锁、系统V流机制、I/O多路转接(select和poll函数)、readv和writev函数以及存储映射I/O。 (一)非阻塞I/O 可能会使进程永远阻塞的一类系统调用有: 1、如果某些文件类型的数据并不存在,则读操作可能会使调用者永远阻塞。 2、如果数据不能立即被上述同样类型的文件接受,则写操作也会使调用者永远阻塞。 3、在某种条件发生之前,打开某...
分类:系统相关   时间:2014-05-22 08:05:30    阅读次数:432
谈.Net委托与线程——解决窗体假死
引言 在之前的《创建无阻塞的异步调用》中,已经介绍过异步调用的编写步骤和实施原理。异步调用是CLR为开发者提供的一种重要的编程手段,它也是构建高性能、可伸缩应用程序的关键。在多核CPU越来越普及的今天,异步编程允许使用非常少的线程执行很多操作。我们通常使用异步完成许多计算型、IO型的复杂、耗时操作....
分类:编程语言   时间:2014-05-22 02:17:56    阅读次数:384
谈.Net委托与线程——创建无阻塞的异步调用(二)
了解IAsyncResult 现在我们已经了解,EndInvoke可以给我们提供传出参数与更新后的ref参数;也可以向我们导出异步函数中的异常信息。例如,我们使用BeginInvoke调用了异步函数Sleep,它开始执行。之后调用EndInvoke,可以获取Sleep何时执行完成。但如果我们在Sle...
分类:编程语言   时间:2014-05-22 01:49:25    阅读次数:381
Java NIO 开篇
一些很好的blog(待更新):1、NIO入门2、NIO.2 入门,第 1 部分: 异步通道 APII- 就是从硬盘到内存O- 就是从内存到硬盘一、阻塞IO第一种方式:我从硬盘读取数据,然后程序一直等,数据读完后,继续操作。这种方式是最简单的,叫阻塞IO。第二种方式:我从硬盘读取数据,然后程序继续向下...
分类:编程语言   时间:2014-05-22 01:44:00    阅读次数:293
谈.Net委托与线程——创建无阻塞的异步调用(一)
前言本文大部分内容来自于mikeperetz的Asynchronous Method Invocation及本人的一些个人体会所得,希望对你有所帮助。原英文文献可以在codeproject中搜索到。介绍这篇文章将介绍异步调用的实现机制及如何调用异步方法。大多数.NET开发者在经过delegate、T...
分类:编程语言   时间:2014-05-22 01:38:36    阅读次数:374
Linux网络编程 五种I/O 模式及select、epoll方法的理解
Linux网络编程 五种I/O 模式及select、epoll方法的理解web优化必须了解的原理之I/o的五种模型和web的三种工作模式五种I/O 模式——阻塞(默认IO模式),非阻塞(常用语管道),I/O多路复用(IO多路复用的应用场景),信号I/O,异步I/O
分类:系统相关   时间:2014-05-21 20:56:15    阅读次数:330
《Java并发编程实战》读书笔记
Subsections  线程安全(Thread safety) 锁(lock) 共享对象 对象组合 基础构建模块 任务执行 取消和关闭 线程池的使用 性能与可伸缩性 并发程序的测试 显示锁 原子变量和非阻塞同步机制 一、线程安全(Thread safety) 无论何时,只要多于一个线程访问给定的状态变量。而且其中某个线程会写入该变量,此时必须使用同...
分类:编程语言   时间:2014-05-21 17:11:45    阅读次数:500
GCD dispatch_semaphore
当我们在处理一系列线程的时候,当数量达到一定量,在以前我们可能会选择使用NSOperationQueue来处理并发控制,但如何在GCD中快速的控制并发呢?答案就是dispatch_semaphore.   信号量是一个整形值并且具有一个初始计数值,并且支持两个操作:信号通知和等待。当一个信号量被信号通知,其计数会被增加。当一个线程在一个信号量上等待时,线程会被阻塞(如果有必要的话),直至计数器大...
分类:其他好文   时间:2014-05-21 09:51:27    阅读次数:258
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!