自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

fengliping的专栏

初来咋到,有做的不妥的地方还请多多包含

  • 博客(15)
  • 资源 (6)
  • 收藏
  • 关注

转载 zthread学习 实例十五ZThread库基本结构的规纳

1、四大基类 CancelableCancelable提供了通用的方法来定义语义,调用了cancel()的Cancelable对象,将被置为disable。调用过cancel()ed的对象不必立即中止工作。通常被cancel()ed的对象尽可能快的继续执行完当前分配给它的工作,然后再变得不可用;但它不能接受任何新分配给它的工作。cancel()函数:使一个Cancelabl

2015-05-19 21:54:05 705

转载 zthread学习 实例十四 信号量机制

ZThread库提供了另外一种同步机制——信号量,它定义了两种信号量:Semaphore(带上界) 和 CountingSemaphore(不带上界),都类似于传统的信号量,下面例子说明了其用法:[cpp] view plaincopy#include "stdafx.h"  #include "Display.h"  #includ

2015-05-19 21:53:18 470

转载 zthread学习 实例十三 线程间的协助(四)——读者、写者

对于读写问题,ZThread库专门封装了类(ReadWriteLock)来控制读写:FairReadWriteLock (按FIFO的顺序进行读写控制):  A FairReadWriteLock maintains a balance between the order read-only access and read-write access is allowed.

2015-05-19 21:52:22 467

转载 zthread学习 实例十二 线程间的协助(三)——死锁

因为线程可以变为阻塞,且因为对象可以拥有互斥锁,这些锁能够阻止线程在锁被释放之前访问这个对象。所以就有可能出现这种情况,某个线程在等待另一个线程而第2个线程又在等待别的线程,以此类推,直到这个链上的最后一个线程回头等待第1个线程。这样就会得到一个由互相等待的线程构成的连续的循环,而使任何线程都不能运行——死锁。死锁的过程是很难重现的,调试的难点。下面看一个经典的死锁问题——哲学家聚餐。

2015-05-19 21:28:53 905

转载 zthread学习 实例十一 线程间的协助(二)

例一、生产者-消费者  一个任务制作烤面包(生产者),一个任务给烤面包抹黄油(消费者),还有一个任务是往抹好黄油的烤面包上抹果酱(消费者)。代码如下:[cpp] view plaincopy#include "stdafx.h"  #include "zthread/FastMutex.h"  #inc

2015-05-19 21:28:43 596

转载 zthread学习 实例九 任务终止(二)——中断方式

引起线程变为阻塞状态的原因有:1、调用了sleep(),线程进入休眠状态。2、调用了wait(),挂起了线程的运行。3、线程正在等待某个I/0操作完成(此时中断是不会出现的)。4、线程在尝试进入一段被一个互斥锁保护的代码块,而那个互斥锁已经被其他线程获得。 终止一个阻塞线程和终止一个非阻塞线程的方式有很大的不同。 终止一个阻塞线程

2015-05-19 21:26:23 580

转载 zthread学习 实例十 线程间的协助(一)

使用线程在同一时刻运行多个任务时,可以使用互斥锁来同步多个任务,阻止一个任务干扰另一个任务的资源。也就是说,使用互斥锁来保证同一时刻只允许一个任务访问共享资源。  线程间协作:多个线程一起工作来共同解决某个问题(问题的某一部分必须在另一部分被解决之前解决完毕)。  ZThread库中使用 互斥锁 并允许 挂起 的基类Condition,可以通过wai

2015-05-19 21:26:16 591

转载 zthread学习 实例八 任务终止(一)——观赏植物园

前面的几个例子中,使用了“退出标志”或Cancelable接口以适当的方式来终止一个任务,但某些情况下任务必须突然结束掉,这样终止任务将会所产生一些问题。 举例:模拟计数,公园委员会想要了解每天有多少从通过公园的 多个 入口进入了。首先是一个互斥输出类,避免多个线程输出出现的混乱[cpp] view plaincopy

2015-05-19 21:25:43 686

转载 zthread学习 实例七 线程本地存储

消除任务在共享资源上发生冲突问题的第二种方法是 消除共享变量,对使用同一个变量的不同线程,可以为同一个变量创建不同的存储单元。因此,如果有5个线程使用一个含有变量x的对象,线程本地存储会自动为变量产生5个不同的存储单元。[cpp] view plaincopy#include "stdafx.h"  #include   #inc

2015-05-19 21:24:20 515

转载 zthread学习 实例六 访问控制

就是对共享资源的同步访问,以免造成不确定的状态。Zhread库是基于Mutex临界区来组建同步机制的。[cpp] view plaincopy#include "stdafx.h"  #include   #include     #include "zthread/Guard.h"  #include "zt

2015-05-19 21:23:33 727

转载 zthread学习 实例五 非任务对象的生存期

在使用线程处理时,必须确保非任务对象在任务需要它们的时候长期保留在活动状态,如果在任务完成之前,那些被任务使用的非任务对象已经被销毁,此时会导致非法访问存储单元。因此,那些被共享的非任务对象总要在堆中new出来,并且确保没有其他任务对象引用它时才动态销毁,此时就是引用计数。      ZThread库有一个引用计数的模板CountedPtr来管理那些对象,以防由对角生存期争端而产生的问题。

2015-05-19 21:21:54 635 1

转载 zthread学习 实例四 让步、休眠、优先级

1、让步Thread::yield()可以介入CPU的调度,使CPU强制放弃执行当前线程。 2、休眠Thread:sleep()可以使线程停止执行一段时间。Thread:sleep()可发抛出一个Interrupted_Exception,该异常必须在run()函数中捕获,因为异常是不会跨线程传播的,只能在线程内部处理。 3、优先级T

2015-05-19 21:21:15 542

转载 zthread学习 三 使用Executor器来执行线程

[cpp] view plaincopy#include "stdafx.h"  #include   #include "zthread/PoolExecutor.h"  #include "zthread/ThreadedExecutor.h"  #include "zthread/ConcurrentExecutor.h"  #includ

2015-05-19 21:21:05 745

转载 zThread学习 二

[cpp] view plaincopy#include "stdafx.h"  #include   #include   #include "zthread/Thread.h"  #include "zthread/Runnable.h"  #include "zthread/PoolExecutor.h"      using na

2015-05-19 21:20:15 666

转载 zThread学习 一

[cpp] view plaincopy#include "stdafx.h"  #include   #include "zthread/Runnable.h"  #include "zthread/PoolExecutor.h"      using namespace ZThread;  using namespace std;  

2015-05-19 21:17:32 734

selenium2 python自动化测试 虫师出品

《selenium2 python 自动化测试实战(第二版)》 虫师出品

2016-12-03

LoadRunner函数大全

ransactions(用户事务分析)   用户事务分析是站在用户角度进行的基础性能分析。   1、Transation Sunmmary(事务综述)   对事务进行综合分析是性能分析的第一步,通过分析测试时间内用户事务的成功与失败情况,可以直接判断出系统是否运行正常。   2、Average Transaciton Response Time(事务平均响应时间)   “事务平均响应时间”显示的是测试场景运行期间的每一秒内事务执行所用的平均时间,通过它可以分析测试场景运行期间应用系统的性能走向。   例:随着测试时间的变化,系统处理事务的速度开始逐渐变慢,这说明应用系统随着投产时间的变化,整体性能将会有下降的趋势

2015-05-07

yourkit v11.0.9

yourkit v11.09版本使用说明: 1.用winrar打开lib目录下的yjp.jar 2.进入目录yjp.jar\com\yourkit\g 3.将k.class替换到同名文件 使用下面命令生成注册码: java -jar yourkit_keygen_v1205.jar 根据提示输入注册名称,注意注册名称只能使用字母或数字混合 生成的注册码有效期为一年,在v12的版本里会显示试用期是一年后,不影响使用。 原来注册机失败是因为yourkit每个版本的k.class文件内容都有所变化。 注册成功效果如附件iOracleSun.png

2015-05-07

Win7、Win8开始菜单完美屏蔽

在Win7和Win8下完美屏蔽开始菜单按钮

2015-04-24

软件设计师考试题

软件设计师考试上午知识点,上午试题的全部知识点得讲解

2012-06-02

c++ 多媒体播放器

基于vs2008下开发的多媒体播放器安装后在安装目录下可以找到源码。功能齐全,你值得拥有

2012-06-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除