锁的效率测试
来源:互联网 发布:淘宝客新玩法 编辑:程序博客网 时间:2024/04/30 00:17
#include <pthread.h>#include <iostream>using namespace std;class lock{public: lock(pthread_mutex_t *mutex): mutex_(mutex) { pthread_mutex_lock(this->mutex_); } ~lock() { pthread_mutex_unlock(this->mutex_); }private: pthread_mutex_t *mutex_;};int main(int argc, char *argv[]){ pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER; int num = ::atoi(argv[1]); int begin = clock(); for (int i = 0; i < num; ++i) { pthread_mutex_lock(&mutex); pthread_mutex_unlock(&mutex); } int end = clock(); cout << (end - begin)<< endl; begin = clock(); for (int i = 0; i < num; ++i) { lock a(&mutex); } end = clock(); cout << (end - begin)<< endl;}
100000000 num 测试 无明显差距
在加锁和释放锁本身并不太消耗耗时, 耗时在于锁被锁住 而一方也要加锁 而处于等待阶段
- 锁的效率测试
- 测试程序的效率
- OMP的效率测试
- GDI+命中测试的效率
- C++异常效率的测试
- InMemeryWorkspace的效率测试结果
- 虚拟机,提高测试的效率
- 浅谈多线程编程以及锁的效率测试
- 测试效率
- 测试效率
- 测试效率
- 测试效率
- 测试效率
- 测试效率
- 测试效率
- 测试效率
- 测试效率
- 测试效率
- JSP和Servlet的中文乱码处理
- Java获取获取汉字拼音和首字母代码
- Linux 多线程编程的问题(转)
- TexturePacker非常棒的图像处理工具
- JSP和Servlet的中文乱码处理
- 锁的效率测试
- You don't have permission to access /ganglia on this server
- AVAudioPlayer音频播放器—IOS开发
- Android 手势识别
- oracle 创建表,序列,索引,视图,触发器,函数,存储过程,定时器,包体
- 类型Universe无法解析程序集:System.Design,Version=4.0.0.0,Culture=neutral,PublickeyToken=......
- cgo
- datatables 解析row参数时对空格的处理bug
- 创建GitHub账号