码迷,mamicode.com
首页 >  
搜索关键字:互斥锁    ( 954个结果
pthread并行计算互斥锁的使用
由于pthread实现并行计算的方式是基于共享内存的,因此在多线程中共享变量的使用存在诸多同步性问题。在多个线程中对同一个变量进行读的时候可能没问题,但是在修改的时候,就有可能造成变量内容的不一致。为了解决这个问题,就需要对共享变量进行互斥的访问。      为了实现这一功能,在pthread中提供了线程锁,通过加锁和解锁就可以轻松避免上述问题,具体实例如下: #include #includ...
分类:其他好文   时间:2014-10-29 21:39:49    阅读次数:213
Siege——多线程编程最佳实例
在英语中,“Siege”意为围攻、包围。同时Siege也是一款使用纯C语言编写的开源WEB压测工具,适合在GNU/Linux上运行,并且具有较强的可移植性。之所以说它是多线程编程的最佳实例,主要原因是Siege的实现原理中大量运用了多线程的各种概念。Siege代码中用到了互斥锁、条件变量、线程池、线...
分类:编程语言   时间:2014-10-29 18:36:17    阅读次数:312
AKKA文档(java版)—角色
角色模型对编写并发、分布式系统进行了高度抽象。它减轻了开发者必须对互斥锁与线程管理的负担,更容易编写出正确的并发与并行系统。早在1973 年 Carl Hewitt 发表的论文中定义了角色,但一直流行于Erlang 语言中...
分类:编程语言   时间:2014-10-24 16:55:05    阅读次数:296
信号量semaphore解析
1 基础概念 信号量在创建时需要设置一个初始值,表示同时可以有几个任务可以访问该信号量保护的共享资源,初始值为1就变成互斥锁(Mutex),即同时只能有一个任务可以访问信号量保护的共享资源。 一个任务要想访问共享资源,首先必须得到信号量,获取信号量的操作将把信号量的值减1,若当前信号量的值为负数,表明无法获得信号量,该任务必须挂起在该信号量的等待队列等待该信号量可用;若当前信号量的值为...
分类:其他好文   时间:2014-10-23 12:35:07    阅读次数:166
自旋锁spinlock解析
1 基础概念 自旋锁与互斥锁有点类似,只是自旋锁不会引起调用者睡眠,如果自旋锁已经被别的执行单元保持,调用者就一直循环在那里看是否该自旋锁的保持者已经释放了锁,"自旋"一词就是因此而得名。   由于自旋锁使用者一般保持锁时间非常短,因此选择自旋而不是睡眠是非常必要的,自旋锁的效率远高于互斥锁。   信号量和读写信号量适合于保持时间较长的情况,它们会导致调用者睡眠,因此只能在进程...
分类:其他好文   时间:2014-10-23 10:45:39    阅读次数:251
自旋锁死锁
自旋锁内调用kmalloc或者copy_to_user之类的接口可能造成死锁。这类函数的实现内有睡眠操作,睡眠时产生了进程调度,新的进程内如果也使用了该自旋锁,就会导致死锁。这类问题非常普通,但很容易忽略;屏蔽的方式:1,使用get_free_page申请内存2,对资源使用引用计数保护3,使用互斥锁
分类:其他好文   时间:2014-10-21 13:44:04    阅读次数:205
C#之Lock
lock关键字将语句块标记为临界区,方法是获取给定对象的互斥锁,执行语句,然后释放该锁。class Program { static void Main(string[] args) { Thread t = new Thread(LockOb...
分类:Windows程序   时间:2014-10-21 10:17:23    阅读次数:214
线程同步的几种方法
线程同步的方式包括:互斥锁、读写锁、条件变量、信号量和令牌。互斥锁和读写锁: 提供对临界资源的保护,当多线程试图访问临界资源时,都必须通过获取锁的方式来访问临界资源。(临界资源:是被多线程共享的资源)当读写线程获取锁的频率 差别不大时,一般采用互斥锁,如果读线程访问临界资源的频率大于写线程,这个时候...
分类:编程语言   时间:2014-10-19 01:14:37    阅读次数:357
条件变量函数
#include #include #include pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;/*初始化互斥锁*/pthread_cond_t cond = PTHREAD_COND_INITIALIZER;/*初始化条件变量*/void ...
分类:其他好文   时间:2014-10-17 01:56:53    阅读次数:509
互斥量函数
一、互斥锁互斥锁,是一种信号量,常用来防止两个进程或线程在同一时刻访问相同的共享资源。需要的头文件:pthread.h互斥锁标识符:pthread_mutex_t(1)互斥锁初始化:函数原型: int pthread_mutex_init (pthread_mutex_t* mutex,const ...
分类:其他好文   时间:2014-10-17 00:50:53    阅读次数:246
954条   上一页 1 ... 86 87 88 89 90 ... 96 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!