CSDN|Semaphore 里面居然有这么一个大坑!


CSDN|Semaphore 里面居然有这么一个大坑!
本文插图
来源 | why技术
头图 | 视觉中国
荒腔走板 先说说这期的荒腔走板 。CSDN|Semaphore 里面居然有这么一个大坑!
本文插图
上面这个图片是我上周末看《乐队的夏天》的时候拍的 。这个乐队的名字叫做水木年华 , 我喜欢这个乐队 。我听他们的歌的时候 , 应该是初中 , 那个时候磁带已经差不多快过气了 , 进入了光碟的时代 , 我记得一张光碟里面有好几十首歌 , 第一次在 DVD 里面听到他们的歌是《一生有你》 , 听到这首歌的时候就感觉很干净 , 很惊艳 。然后一字一句抄在自己的歌词本上 。听到这首歌的那个周末 , 我就看着那个 MV 反复学 , 那时的 DVD 有个功能是可以 A-B 反复播放某个片段 , 我就一句一句的学 , 学会了这首歌 。那时候的李健 , 一双清澈明亮的大眼睛 , 就像一汪湖水 , 我一个小男孩 , 都好想在他的眼睛里扎个猛子 。这首歌 , 我愿称之为校园民谣的巅峰之一 。十多年后的今天 , 这个乐队重新出现在我的视野中 , 只是李健已经不再其中 。他们在乐队的夏天的舞台上唱了一首《青春再见》 , 结果被一个自称 23 岁的胖小伙说“中年人的油腻” , 被另个专业乐迷说:“四十多岁的人怎么还在唱青春再见?” 。 第一期就被淘汰出局 。这操作 , 看的我一愣一愣的 。这个怎么就油腻了?四十多岁的人怎么就不能唱青春再见了?男人至死都是少年你们不知道吗?小子 , 他们玩音乐的时候你还不会说话呢 。他们离开舞台的画面 , 我感觉到一丝辛酸 , 一丝真的青春再见的辛酸 。水木年华没有错 , 错的是这个舞台 , 这个舞台不适合他们的歌曲 。好了 , 说回文章 。
一起看个问题 前几天有个读者给我发了一个链接 , 说这个链接里面的代码 , 为什么会这样运行 , 实在是没有搞懂是怎么回事 , 链接如下:CSDN|Semaphore 里面居然有这么一个大坑!
本文插图
代码是这样的 , 给大家上个图:

CSDN|Semaphore 里面居然有这么一个大坑!
本文插图
注意第 10 行 , permits 参数 , 根据他的描述应该是 3:
不知道为什么代码里面给了一个 2 。 但是为了保证真实 , 我直接拿过来了 , 没有进行改动 。 一会我会根据这个代码进行简单的修改 。知道 semaphore 是干啥的同学可以先看看上面的代码 , 为什么造成了“死锁” 。反正是一个非常无语的低级错误 , 但是我反复看了几遍居然没有看出来 。不知道 semaphore 是干啥的同学 , 看过来 。 我先给你科普一下 。semaphore 我们一般叫它信号量 , 用来控制同时访问指定资源的线程数量 。如果不懂 semaphore, 那上面代码你也看不懂了 , 我按照代码的逻辑给你举个例子 。比如一个高端停车场 , 只有 3 个车位 。 (这就是“指定资源”) 现在里面没有停车 , 那么它最多可以停几辆车呢? 是的 , 门口的剩余车辆指示牌显示:剩余停车位 3 辆 。这个时候 , 有三路人想要过来停车 。三条路分别是:转发路、点赞路、赞赏路 。
CSDN|Semaphore 里面居然有这么一个大坑!
本文插图
路上的车分别是 why 哥的劳斯莱斯、赵四的布加迪、刘能、谢广坤这对好基友开的法拉利:
CSDN|Semaphore 里面居然有这么一个大坑!
本文插图
这个时候从“点赞路”过来的赵四先开到了 , 于是停了进去 。门口的停车位显示:剩余停车位 2 辆 。
CSDN|Semaphore 里面居然有这么一个大坑!


推荐阅读