加入收藏 | 设为首页 | 会员中心 | 我要投稿 长春站长网 (https://www.0431zz.com.cn/)- 媒体智能、开发者工具、运维、低代码、办公协同!
当前位置: 首页 > 站长资讯 > 动态 > 正文

如何解决物联网挑战

发布时间:2021-02-13 13:01:18 所属栏目:动态 来源:互联网
导读:吒吒辉: 数据库的锁根据不同划分方式有很多种说法,在业务访问上有以下两种: 排他锁 在访问共享资源之前对其进行加锁,在访问完成后进行解锁操作。 加锁成功后,任何其它线程请求来获取锁都会被阻塞,直到当前线自行释放锁。 线程3状态:就绪、阻塞、执行

吒吒辉: 数据库的锁根据不同划分方式有很多种说法,在业务访问上有以下两种:

  •  排他锁

在访问共享资源之前对其进行加锁,在访问完成后进行解锁操作。 加锁成功后,任何其它线程请求来获取锁都会被阻塞,直到当前线自行释放锁。

线程3状态:就绪、阻塞、执行

如解锁时,有一个以上的线程阻塞(资源已释放),那么所有尝试获取该锁的线程都被CPU认为就绪状态, 如果第一个就绪状态的线程又执行加锁操作,那么其他的线程又会进入就绪状态。 在这种方式下,只能有一个线程访问被互斥锁保护的资源

故此,MySQL的SQL语句加了互斥锁后,只有接受到请求并获取锁的线程才能够访问和修改数据。 因为互斥锁是针对线程访问控制而不是请求本身。

  • 共享锁

什么是锁

面试官:: 你是来参加面试的吧?

吒吒辉: 不 不 不,我是来参加复试呢。

面试官:: 看到上次别人点评,MySQL优化还阔以。那你先谈谈对锁的理解?

吒吒辉: 嘿嘿,还好!

是计算机在进行多 进程、线程执行调度时强行限制资源访问的同步机制,用于在并发访问时保证数据的一致性、有效性;

锁是在执行多线程时,用于强行限制资源访问的同步机制,即用在并发控制中保证对互斥的要求。

一般的锁是建议锁(advisory lock),每个线程在访问对应资源前都需获取锁的信息,再根据信息决定是否可以访问。若访问对应信息,锁的状态会改变为锁定,因此其它线程此时不会来访问该资源,当资源结束后,会恢复锁的状态,允许其他线程的访问。

有些系统有强制锁(mandatory lock),若有未授权的线程想要访问锁定的数据,在访问时就会产生异常。

---《维基百科》

锁的类型和应用原理

面试官:: 那一般数据库有哪些锁? 一般怎么使用?

此刻,用我那呆若木鸡的眼神看向面试官,内心实属尴尬+害怕,数据库不就是共享和互斥锁吗?

这样看来,是我太嫩。此处必有坑。殊不知此刻我内心已把你拿捏,定斩不饶。

 

刻面试门外首先映入眼帘的是一个白色似皮球的东西,似圆非圆。好奇冬瓜落地一般。上半段还有一段湿湿的部分,显得尤为入目。这是什么情况?

紧接着现身一名中年男子。他身着纯白色T桖衫的,一灰色宽松的休闲西裤,腰围至少得三十好几。外加一双夏日必备皮制凉鞋。只见,他正低头看着手上的一张A4纸。透过一头黑色短发。满脸的赘肉横生。外加上那大腹便便快要把那T桖衫给撑爆的肚子。

看得我好生害怕,不由得咽了咽口水,生怕自己说错话。这宛如一颗肉粽呀。不在职场摸滚打拼8、9年,也不会有当前这景象。


 

(编辑:长春站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读