深入理解 String Unicode UTF8 UTF16、MySQL 是怎么加行级锁的?| 酱酱的下午茶第111期
今日主理人|下午茶
酱酱们的下午茶全新改版,欢迎大家多提宝贵意见!
本文字数2000+,阅读时间大约需要 6 分钟。
每日干货|下午茶
主理人们会对近期(1-3天)社区深度技术好文进行挖掘和筛选,优质的技术文章有机会出现在下方列表,排名不分先后。
『前端』
📖阅读本文,你将
- 理解大屏 “无限滚动组件” 的开发思路
- 跟随作者,一步步完成一个高性能 “无限滚动组件” 的开发
- 收获一份该实现的粗糙源码。
为什么同样是男人,但有的男人
'🧔♂️'.length === 5
,有的男人'🧔♂'.length === 4
呢?这二者都是JS中的字符串,要理解本质原因,你需要明白JS中字符串的本质,你需要理解 String Unicode UTF8 UTF16 的关系。本文,深入二进制,带你理解它!
众所周知,函数节流(throttle)是 JS 中一个非常常见的优化手段,可以有效的避免函数过于频繁的执行。
举个例子:一个保存按钮,为了避免重复提交或者服务器考虑,往往需要对点击行为做一定的限制,比如只允许每
300ms
提交一次,这时候我想大部分同学都会到网上直接拷贝一段throttle
函数,或者直接引用lodash
工具库btn.addEventListener('click', _.throttle(save, 300))
其实除了 JS 方式, CSS 也可以非常轻易的实现这样一个功能,无需任何框架库,一起看看吧
作为一个 React 开发者,如果你一直觉得
useMemo
和useCallback
这两个 Hook 比较难以理解,那么别害怕,事实上很多人都如此。我和其他公司很多的 React 开发者交流过,大多数对这两个 Hook 都是一知半解的状态。这篇文章就为你答疑解惑,为大家介绍这两个 Hook 的具体作用,它们的实现原理以及在实际开发中如何应用。
这篇文章更适合初/中级 React 开发者用于加深对 React 的理解,如果你才刚刚开始学习 React ,那么你也可以先将这篇文章收藏起来,在你对 React 有了一定使用经验后再回来学习。
这一篇文章我们仍然是以这种方式为主,不过这一篇需要了解的概念会比上一篇多一些,但是我并不会为它大书特书,所以当有一些概念性的东西,你在看的时候觉得自己不是特别理解的话,聪明的你,一定要记得多借助搜索引擎来帮助自己 ~ ),我主要会讲一些在示例中必须要了解概念,以便让大家不会看到大量的协议或者名词概念直接劝退,目的是快速上手。
『后端』
最近在工作中结合线程池使用
InheritableThreadLocal
出现了获取线程变量“错误”的问题,看了相关的文档和源码后在此记录。
在前面的几篇文章中,我们一起聊了下本地缓存的动手实现、本地缓存相关的规范等,也聊了下Google的Guava Cache的相关原理与使用方式。比较心急的小伙伴已经坐不住了,提到本地缓存,怎么能不提一下“地上最强”的
Caffeine Cache
呢?
之前我写过一篇关于「MySQL 是怎么加行级锁的?」的文章,随着我写 MySQL 锁相关的文章越来越多时,后来发现当时的文章写的不够详细。
为了让大家很清楚的知道 MySQL 是怎么加行级锁的,以及如何用命令分析加了什么行级锁,所以我重写了这篇文章。
业务功能描述:有一个功能是需要调用基础平台接口组装我们需要的数据,在这个功能里面我们要调用多次基础平台的接口,我们的入参是一个id,但是这个id是一个集合。我们都是使用RPC调用,一般常规的想法去遍历循环这个idList,但是呢这个id集合里面的数据可能会有500个左右。说多不多,说少也不少,主要是在for循环里面多次去RPC调用是一件特别费时的事情。
『移动端』
APK 主要由五个部分组成,分别是: Dex:.class 文件处理后的产物,Android 系统的可执行文件 Resource:资源文件,主要包括 layout、drawable、animator,通过 R.XXX.id 引用 Assets:资源文件,通过 AssetManager 进行加载 Library:so 库存放目录 META-INF:APK 签名有关的信息
越来越多的App安装到用户的手机上,导致iPhone的磁盘不足。笔者就经常需要去删除一些缓存、卸载一些不用的App,来减少我们磁盘空间的占用,这个时候,就会去通用设置界面,去把一些磁盘占用大的App删除掉。来释放一些磁盘空间。各个App厂商都在研究如何减少磁盘缓存占用,降低App被卸载的风险。
📖 投稿专区|下午茶
大家可以在评论区推荐认为不错的文章,并附上链接和推荐理由,有机会登上下一期。文章创建日期必须在近1-3天内;可以推荐自己的文章、也可以推荐他人的文章。
转载自:https://juejin.cn/post/7166441307588526094