CSDN|Semaphore 里面居然有这么一个大坑!
本文插图
来源 | why技术
头图 | 视觉中国
荒腔走板 先说说这期的荒腔走板 。
本文插图
上面这个图片是我上周末看《乐队的夏天》的时候拍的 。这个乐队的名字叫做水木年华 , 我喜欢这个乐队 。我听他们的歌的时候 , 应该是初中 , 那个时候磁带已经差不多快过气了 , 进入了光碟的时代 , 我记得一张光碟里面有好几十首歌 , 第一次在 DVD 里面听到他们的歌是《一生有你》 , 听到这首歌的时候就感觉很干净 , 很惊艳 。然后一字一句抄在自己的歌词本上 。听到这首歌的那个周末 , 我就看着那个 MV 反复学 , 那时的 DVD 有个功能是可以 A-B 反复播放某个片段 , 我就一句一句的学 , 学会了这首歌 。那时候的李健 , 一双清澈明亮的大眼睛 , 就像一汪湖水 , 我一个小男孩 , 都好想在他的眼睛里扎个猛子 。这首歌 , 我愿称之为校园民谣的巅峰之一 。十多年后的今天 , 这个乐队重新出现在我的视野中 , 只是李健已经不再其中 。他们在乐队的夏天的舞台上唱了一首《青春再见》 , 结果被一个自称 23 岁的胖小伙说“中年人的油腻” , 被另个专业乐迷说:“四十多岁的人怎么还在唱青春再见?” 。 第一期就被淘汰出局 。这操作 , 看的我一愣一愣的 。这个怎么就油腻了?四十多岁的人怎么就不能唱青春再见了?男人至死都是少年你们不知道吗?小子 , 他们玩音乐的时候你还不会说话呢 。他们离开舞台的画面 , 我感觉到一丝辛酸 , 一丝真的青春再见的辛酸 。水木年华没有错 , 错的是这个舞台 , 这个舞台不适合他们的歌曲 。好了 , 说回文章 。
一起看个问题 前几天有个读者给我发了一个链接 , 说这个链接里面的代码 , 为什么会这样运行 , 实在是没有搞懂是怎么回事 , 链接如下:
本文插图
代码是这样的 , 给大家上个图: 注意第 10 行 , permits 参数 , 根据他的描述应该是 3: 不知道为什么代码里面给了一个 2 。 但是为了保证真实 , 我直接拿过来了 , 没有进行改动 。 一会我会根据这个代码进行简单的修改 。知道 semaphore 是干啥的同学可以先看看上面的代码 , 为什么造成了“死锁” 。反正是一个非常无语的低级错误 , 但是我反复看了几遍居然没有看出来 。不知道 semaphore 是干啥的同学 , 看过来 。 我先给你科普一下 。semaphore 我们一般叫它信号量 , 用来控制同时访问指定资源的线程数量 。如果不懂 semaphore, 那上面代码你也看不懂了 , 我按照代码的逻辑给你举个例子 。比如一个高端停车场 , 只有 3 个车位 。 (这就是“指定资源”) 现在里面没有停车 , 那么它最多可以停几辆车呢? 是的 , 门口的剩余车辆指示牌显示:剩余停车位 3 辆 。这个时候 , 有三路人想要过来停车 。三条路分别是:转发路、点赞路、赞赏路 。 路上的车分别是 why 哥的劳斯莱斯、赵四的布加迪、刘能、谢广坤这对好基友开的法拉利: 这个时候从“点赞路”过来的赵四先开到了 , 于是停了进去 。门口的停车位显示:剩余停车位 2 辆 。
推荐阅读
- 青年|为什么花呗之前要10号还款?里面的套路竟然第一次知道
- 手机使用技巧|手机变慢了,是里面垃圾太多了,那么怎样清理手机垃圾呢?
- 地球|地心的温度,达到了太阳表面的温度,里面会存在着什么物质
- 互联网|购买手机,你是选择实体店还是网上,敢在拼多多里面买手机吗?
- CSDN|三次改变世界、却被无情出局的程序员
- CSDN|机器学习将会如何影响软件开发和测试?看完这文就懂了
- CSDN|语雀的技术架构演进之路
- CSDN|字节跳动、腾讯回应美国政府行政命令;英特尔回应20GB机密文档被泄露;优麒麟20.04.1发布|极客头条
- CSDNTB|监控系统选型,这篇不可不读
- CSDN|知乎技术热帖:Qt 这么强大为什么火不起来?