多线程mutex_lock的使用

本文介绍了在多线程环境下,使用mutex_lock解决资源共享和线程安全问题的一个实例。作者通过一个简单的示例展示了如何使用mutex_lock避免段错误,并讨论了不使用mutex时可能出现的混乱结果。同时,提到了在Ubuntu上查找和学习pthread相关man手册的方法,强调了正确使用mutex_lock的重要性。
摘要由CSDN通过智能技术生成

由于之前写的本来说多进程,但是由于需要共享资源(也就是共享一些变量),虽然进程通过其他方法可以实现共享资源,但是还是觉得用线程比较好!

所以改成多线程了,但是一直没有用mutex,出现了不少段错误。我觉得势必和资源共享有许多关系!

本来线程安全 的 资源共享 我觉得 用个变量来控制就行,比如

int lock_x=0;

在线程中

if(lock_x==1) usleep(20);//休息20毫秒 、、这里我还害怕死循环呢

lock_x=1;

//do change of x

lock_x=0;

这样看起来好,实际上也不咋样吧。pthread_mutex(看参考资料1)我早就知道,但是不知具体用法,其实用法比上面的要简单,而且可以少写一句话,而且肯定比我的线程数据安全了。

我就写个例子吧。多线程的 共享资源修改示例:

复制代码
/*
============================================================================
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值