概念为了在单一进程中充分发挥多核的优势,我们有必要使用多线程技术(我们没必要去提多进程,这玩意儿和GCD没关系)。在低层,GCD全局dispatch queue仅仅是工作线程池的抽象。这些队列中的Block一旦可用,就会被dispatch到工作线程中。提交至用户队列的Block最终也会通过全局队列进...
分类:
其他好文 时间:
2014-09-29 13:04:30
阅读次数:
259
随着多核时代的到来,并行开发越来越展示出它的强大威力!使用并行程序,充分的利用系统资源,提高程序的性能。在.net 4.0中,微软给我们提供了一个新的命名空间:System.Threading.Tasks。这里面有很多关于并行开发的东西,今天第一篇就介绍下最基础,最简单的——认识和使用Paralle...
分类:
编程语言 时间:
2014-09-28 19:05:54
阅读次数:
226
问题:
写一个程序,让用户来决定Windows任务管理器(Task Manager)的CPU占用率(单核)。有以下几种情况:
1.CPU占用率固定在50%,为一条直线
2.CPU的占用率为一条直线,具体占用率由命令行参数决定(范围1~100)
3.CPU的占用率状态为一条正弦曲线
4.多核处理器情况下上述问题怎么解决
首先确定CPU占有率的定义,即在任务管理器的一个刷新周期内,...
分类:
其他好文 时间:
2014-09-28 17:11:03
阅读次数:
225
并行开发一直是程序员在开发项目中遇到的一道坎,但为了迎合硬件的升级,面对高端多核的处理器,并行编程势在必行。在.NET平台下的开发支持并行模式,下面用一个实际项目说明并行的高效率和神奇之处。在优化中国铁建企业经营管理系统时,遇到一个迫切需要解决的问题.就是报表处理响应时间的问题,在系统最初数据较少,...
分类:
Web程序 时间:
2014-09-26 00:42:28
阅读次数:
279
在上篇文章《.net中的并行编程-1.基础知识》中列出了在.net进行多核或并行编程中需要的基础知识,今天就来分析在基础知识树中一个比较简单常用的并发数据结构--.net类库中无锁栈的实现。 首先解释一下什么这里“无锁”的相关概念。 所谓无锁其实就是在普通栈的实现方式上使用了原子操作,原子操作的原理...
分类:
Web程序 时间:
2014-09-26 00:24:47
阅读次数:
216
随着多核时代的到来,并行开发越来越展示出它的强大威力!使用并行程序,充分的利用系统资源,提高程序的性能。在.net 4.0中,微软给我们提供了一个新的命名空间:System.Threading.Tasks。这里面有很多关于并行开发的东西,今天第一篇就介绍下最基础,最简单的——认识和使用Paral.....
分类:
编程语言 时间:
2014-09-25 21:03:57
阅读次数:
274
Python多线程Python中实现多线程有两种方式,一种基于_thread模块(在Python2.x版本中为thread模块,没有下划线)的start_new_thread()函数,另一种基于threading模块的Thread类。其实Python的多线程编程不能真正利用多核的CPU,但是用开源模...
分类:
编程语言 时间:
2014-09-24 19:46:27
阅读次数:
240
一. 何谓"原子操作": 原子操作就是: 不可中断的一个或者一系列操作, 也就是不会被线程调度机制打断的操作, 运行期间不会有任何的上下文切换(context switch). 二. 为什么关注原子操作? 1. 如果确定某个操作是原...
分类:
其他好文 时间:
2014-09-21 21:07:21
阅读次数:
276
查看多核CPU命令mpstat -P ALL 和 sar -P ALL说明:sar -P ALL > aaa.txt 重定向输出内容到文件 aaa.txttop命令经常用来监控linux的系统状况,比如cpu、内存的使用,程序员基本都知道这个命令,但比较奇怪的是能用好它的人却很少,例如top监控视图...
分类:
系统相关 时间:
2014-09-20 18:13:09
阅读次数:
410
MySQL管理之道:性能调优、高可用与监控》迷你书MYSQL5.5.X主要改进1、默认使用innodb存储引擎2、充分利用CPU多核处理能力3、提高刷写脏页数量和合并插入数量,改善I/O4、让innodb_buffer_pool缓冲池中的热数据存活更久,污染问题5、innodb数据恢复时间加快6、i...
分类:
数据库 时间:
2014-09-19 11:36:45
阅读次数:
270