一、传统并发模型的缺点基于线程的并发特点:每任务一线程直线式的编程使用资源昂高,context切换代价高,竞争锁昂贵太多线程可能导致吞吐量下降,响应时间暴涨。基于事件的并发模型特点:单线程处理事件每个并发流实现为一个有限状态机应用直接控制并发负载增加的时候,吞吐量饱和响应时间线性增长二、SEDA架构...
分类:
其他好文 时间:
2014-08-18 14:21:32
阅读次数:
242
临界区是一种防止多个线程同时执行一个特定代码节的机制,这一主题并没有引起太多关注,因而人们未能对其深刻理解。在需要跟踪代码中的多线程处理的性能时,对 Windows 中临界区的深刻理解非常有用。本文深入研究临界区的原理,以揭示在查找死锁和确认性能问题过程中的有用信息。它还包含一个便利的实用工具程序,...
分类:
其他好文 时间:
2014-08-12 12:50:14
阅读次数:
331
多线程技术在服务端技术中已经发展的很成熟了,而在Web端的应用中却一直是鸡肋在新的标准中,提供的新的WebWork API,让前端的异步工作变得异常简单。使用:创建一个Worker对象,指向一个js文件,然后通过Worker对象往js文件发送消息,js文件内部的处理逻辑,处理完毕后,再发送消息回到当...
分类:
编程语言 时间:
2014-08-07 12:45:50
阅读次数:
189
能够承载10w个timer通信执行,说关闭就关闭,里面用了一个比較巧妙的线程处理,呵呵10W个timer就10多个线程,请大牛不要笑话,供新手学习之用#pragma once#include typedef void (CALLBACK* UXTIMERCALLBACK)(DWORD,void*);...
分类:
编程语言 时间:
2014-08-06 14:21:41
阅读次数:
262
概述
在java2后,提供了threadlocal。这样一个新的工具类在处理多线程时提供了另外一种与之前不同的解决方案,而且对于开发者来说更加的简洁。它为每个访问这个变量的线程提供一个线程副本,并将这个副本存入到map中。这样就相当于每个线程都拥有自己独立的变量,在多线程并发操作时就不会造成操作数据的不一致。而在单例模式中,使用到的synchronized。它的机制是控制变...
分类:
编程语言 时间:
2014-08-05 22:37:30
阅读次数:
395
前一段进行网络基础库构建的时候,网络发送的加密组包以及网络返回的回调解包处理都是在单独的主线程处理。 跟踪程序的时间发现这部分耗时还挺大,于是决定使用多线程处理,至少不应该使用主线程。
一直以来网上都在强调多线程的dispatch的妙用,自己仅仅是会用而没有实际测试过它的性能。今天将上次测试的结果发出来,说实话dispatch的多线程效率确实很高,跟cpu的核心数有很多关系。
测试思想:
使...
分类:
其他好文 时间:
2014-08-05 15:49:29
阅读次数:
204
1.背景
比如注册用户的时候需要发送邮件,但是发送邮件有一定的延时,所以注册的时候是发邮件的同时,返回注册成功给用户,而发邮件则由发邮件线程处理?如何处理发邮件的线程呢?我目前想到的有:1.每次需要运行时临时创建线程;2.线程每次执行完毕后自行Sleep一定的时间,等待结束后检查是否有需要运行的必要,否则进入Sleep。第一个方法由于每次都要起一个线程,然后又关掉线程,反反复复不好,而且还有其他...
分类:
编程语言 时间:
2014-07-31 13:19:46
阅读次数:
231
一、MINA简介 在介绍Mina之前,要先介绍一下NIO和BIO这两个名词: BIO:Blocking IO,阻塞IO,每个客户端的请求对应一个线程处理。使用BIO有一个问题,当客户端的连接请求过多时,服务端就会需要很多线程来处理客户端的请求,这样很容易使得服务器资源消耗过度等问题。 NIO:...
分类:
其他好文 时间:
2014-07-29 21:02:22
阅读次数:
232
上周做了一个多线程处理大量文件的功能 一是记录 二是分享 三是请博友指出不足 更多的了解多线程。1.任务:将大量(大约5G)一目录下有日期规则命名的html文件按照年月日三个层次目录存放,目的是为了提高文件检索效率。2.具体实现:开启10个线程 将文件拷贝到目标文件夹;不符合要求的文件拷贝到别处;记...
分类:
编程语言 时间:
2014-07-27 10:28:12
阅读次数:
229
一、线程池作用 在上一篇随笔中有提到多线程具有同一时刻处理多个任务的特点,即并行工作,因此多线程的用途非常广泛,特别在性能优化上显得尤为重要。然而,多线程处理消耗的时间包括创建线程时间T1、工作时间T2、销毁线程时间T3,创建和销毁线程需要消耗一定的时间和资源,如果能够减少这部分的时间消耗,性能将....
分类:
编程语言 时间:
2014-07-24 21:49:53
阅读次数:
318