归档:2022 年
晚一些,再晚一些
今天是西方的圣诞节,不管我们庆不庆祝这个西洋节日,它都会若期而至,提醒着人们新的一年即将来临。
以太坊智能合约入门:Ganache + Truffle
借助Ganache和Truffle,可以快速入门以太坊智能合约开发,本文将通过一个Demo,演示智能合约开发、编译至部署过程。
net::ERR_HTTP2_PROTOCOL_ERROR
Ajax请求出现错误net::ERR_HTTP2_PROTOCOL_ERROR,定位为CDN配置不合理造成。
太阳依旧会升起
这场似乎看不到尽头的疫情,实实在在地影响了我们每一个人。所有的感受和经历,一样一样的,恐怕都不会缺少。
iOS Background Task使用陷阱
发现线上用户有在后台状态被杀死的情况,最终定位到是不合理使用Background Task造成的,这篇文章简要介绍下使用Background Task需要注意的事项。
IntelliJ IDEA 制作生产 jar 包
这是一篇入门级的开发手册,介绍使用 IntelliJ IDEA 新建 Java 项目,和生成 jar 包。
Linux线程局部存储 Thread Local Storage
在C/C++程序中,全局变量默认是所有线程共享的,开发者需要处理多线程竞争问题。有些情况下我们需要保证一个线程独享一份数据,其它线程无法访问。典型的就是errno全局变量,它总是会保存当前线程最后一个调用的错误码,不会存在线程冲突。这个时候需要使用线程局部存储(TLS)来解决。
如何正确地获取线程ID?
如何正确的获取线程ID?这个问题看似简单实则暗藏陷阱。由于存在用户态和内核态两层线程模型,就有两种获取线程ID的方式。
优雅地使用#include
#include并不只是用来引用头文件的,合理的使用#include可以让代码更优雅。
