新浪微博
腾讯微博
会员列表
统计排行
基本信息
到访IP统计
管理团队
管理统计
在线会员
会员排行
版块排行
帖子排行
标签排行
帮助
下拉
用户名
电子邮箱
用户名
密 码
记住登录
登录
找回密码
注册
快捷通道
关闭
您还没有登录,快捷通道只有在登录后才能使用。
立即登录
还没有帐号? 赶紧
注册一个
首页
论坛
Qt下载
作品展
群组
个人中心
捐赠、管理与开发
邮件订阅
帖子
文章
日志
用户
版块
群组
帖子
搜索
QTCN开发网
>
Qt基础编程
>
请教关于QMutex的用法??
发帖
回复
返回列表
新帖
7594
阅读
3
回复
[提问]
请教关于QMutex的用法??
[复制链接]
上一主题
下一主题
离线
starter
UID:133436
注册时间
2012-06-25
最后登录
2012-12-27
在线时间
46小时
发帖
44
搜Ta的帖子
精华
0
金钱
455
威望
54
贡献值
0
好评度
44
访问TA的空间
加好友
用道具
新手上路
关闭
个人中心可以申请新版勋章哦
立即申请
知道了
加关注
发消息
只看楼主
正序阅读
楼主
发表于: 2012-10-23
关键词:
问题
如果有两个函数fun1,和fun2,分别在两个
线程
中调用,是不是必须在两个函数中同时加锁才有用,如果只在一个线程中加锁会怎么样?
比如: int d = 0;
QMutex mutex;
void fun1(int& d)
{
mutex.lock();
d += 5;
d /= 4;
mutex.unlock();
}
void fun2(int& d)
{
mutex.lock(); //如果将此处注释掉会怎么样?
d *= 2;
d -= 2;
mutex.unlock();//如果将此处注释掉会怎么样?
}
共
条评分
回复
举报
分享到
淘江湖
新浪
QQ微博
QQ空间
开心
人人
豆瓣
网易微博
百度
鲜果
白社会
飞信
离线
ggkuroky
UID:137394
注册时间
2012-10-19
最后登录
2012-10-28
在线时间
17小时
发帖
46
搜Ta的帖子
精华
0
金钱
460
威望
56
贡献值
0
好评度
46
访问TA的空间
加好友
用道具
新手上路
加关注
发消息
只看该作者
3楼
发表于: 2012-10-23
Locks the mutex. If another thread has locked the mutex then this call will block until that thread has unlocked it.
Calling this function multiple times on the same mutex from the same thread is allowed if this mutex is a recursive mutex. If this mutex is a non-recursive mutex, this function will dead-lock when the mutex is locked recursively
Unlocking a mutex that is not locked results in undefined behavior.
共
条评分
相信自己,天道酬勤!
回复
举报
离线
jdwx
UID:107742
注册时间
2010-11-12
最后登录
2016-02-01
在线时间
4619小时
发帖
2939
搜Ta的帖子
精华
0
金钱
30465
威望
3015
贡献值
0
好评度
3005
访问TA的空间
加好友
用道具
论坛版主
加关注
发消息
只看该作者
2楼
发表于: 2012-10-23
回 1楼(starter) 的帖子
lock和unlock必须配对使用,如果没有unlock,这个mutex会被锁住,想要lock的其它线程就会卡住,一直等待mutex被unlock。
共
条评分
发帖时要说明:操作系统、Qt版本、编译器,这样能更快的得到回复。
回复
举报
离线
starter
UID:133436
注册时间
2012-06-25
最后登录
2012-12-27
在线时间
46小时
发帖
44
搜Ta的帖子
精华
0
金钱
455
威望
54
贡献值
0
好评度
44
访问TA的空间
加好友
用道具
新手上路
加关注
发消息
只看该作者
1楼
发表于: 2012-10-23
难道就没有一个人能说说吗??
共
条评分
回复
举报
发帖
回复
返回列表
http://www.qtcn.org/bbs
访问内容超出本站范围,不能确定是否安全
继续访问
取消访问
快速回复
限100 字节
您目前还是游客,请
登录
或
注册
进入高级模式
文字颜色
发 布
回复后跳转到最后一页
上一个
下一个
关闭
补充发布信息
验证码:
发 布
隐藏
快速跳转
站务及资讯
网站公告
新闻资讯
Qt官方发布
网站管理
Qt应用及资源
Qt 作品展
Qt代码秀
Qt应用版
Qt技术讨论区
Qt安装与发布
Qt中文处理
Qt基础编程
Qt QML开发
Qt嵌入式开发
Qt移动平台开发
其它技术开发讨论区
Qt图书专区
《C++ GUI Qt 4编程》(第2版)专栏
《Qt高级编程》专栏
《零基础学Qt4编程》专栏
《Qt设计模式》(第2版) 图书专栏
Python Qt GUI快速编程
Qt项目开发区
天池项目
Qt开放平台开发库
机械CAD
扇贝词典
非活跃项目区
社区中心
帖子回收站(Trash)
招聘、求职、供求、广告等
休闲娱乐
关闭
关闭
选中
1
篇
全选