高效线程使用圣典
严格来讲,线程的系统开销很大。系统必须为线程分配并初始化一个线程内核对象,还必须为每个线程保留1MB的地址空间(按需提交)用于线程的用
户模式堆栈,分配12KB左右的地址空间用于线程的内核模式堆栈。然后,紧接着线程创建后,Windows调用进程中每个DLL都有的一个函数来通知进程....
分类:
编程语言 时间:
2014-05-23 10:25:32
阅读次数:
399
单例设计模式用来创建唯一的对象,有些时候我们只需要一个对象,如:线程池,缓存,对话框,注册表,日志对象,等等。这就需要单例设计模式来完成。不用多说,直接上代码。public
class TestSingle { private static TestSingle single = null; pri...
分类:
其他好文 时间:
2014-05-23 03:48:01
阅读次数:
235
不管在erlang的shell下还是脚本里,启动参数都是非常有用的,抽空儿整理下erlang的常用启动参数:+A size
异步线程池的线程数,范围为0~1024,默认为10+PNumber|legacy 最大进程数,范围为1024-134217727,默认为262144+K
true | fa.....
分类:
其他好文 时间:
2014-05-23 03:14:03
阅读次数:
629
为了无阻塞地实现并发通信及处理,设计了一种流水线线程池模式。流水线结构保证了各个客户工作在大粒度上并行化,线程池技术保证了处理器资源的最大利用,可以显著提高系统的吞吐能力。另一个附加好处,是可以让VIP获得高级优先级。...
分类:
其他好文 时间:
2014-05-22 10:14:58
阅读次数:
356
java线程加强
Quartz :一个调度框架(比如想实现定时器的日期切换等等)
Git Bash
定时器:Timer 定时炸弹代码如下:
public class TimerTest {
public static int count = 1;
@SuppressWarnings( "dep...
分类:
编程语言 时间:
2014-05-22 10:02:42
阅读次数:
459
现在很多语言都内置了线程池实现,但C++中却没有。本文列举一些C++实现的线程池工具。Boost.Threadpool
项目首页:http://threadpool.sourceforge.net
Boost.Threadpool是一个基于Boost、跨平台的C++线程池库。Boost.Th...
分类:
编程语言 时间:
2014-05-21 18:54:30
阅读次数:
363
Subsections
线程安全(Thread safety)
锁(lock)
共享对象
对象组合
基础构建模块
任务执行
取消和关闭
线程池的使用
性能与可伸缩性
并发程序的测试
显示锁
原子变量和非阻塞同步机制
一、线程安全(Thread safety)
无论何时,只要多于一个线程访问给定的状态变量。而且其中某个线程会写入该变量,此时必须使用同...
分类:
编程语言 时间:
2014-05-21 17:11:45
阅读次数:
500
本文参考《Android系统源代码情景分析》,作者罗升阳
一、测试代码:
~/Android/external/binder/server
----FregServer.cpp
~/Android/external/binder/common
----IFregService.cpp
...
分类:
移动开发 时间:
2014-05-21 15:48:09
阅读次数:
507
1. 给用户添加任务的接口是 schedule(arg), arg应该如何设置a) 创建 Work
class, 将arg设置为 Work*,
Work由用户创建,用户删除,线程池内仅保留对Work对象的引用问题:我写完thread_pool后才发现,用户不再知道如何去删除他创建的
Work了,因为...
分类:
编程语言 时间:
2014-05-20 12:15:23
阅读次数:
337