Modern CMake 简单使用 Modern CMake 简单使用 目录结构 ├── CMakeLists.txt ├── main.cpp └── threadpool ├── CMakeLists.txt ├── threadpool.cpp └─...
你真的知道Spring注解驱动的前世今生吗?这篇文章让你豁然开朗! 本篇文章,从Spring1.x到Spring 5.x的迭代中,站在现在的角度去思考Spring注解驱动的发展过程,这将有助于我们更好的理解Spring中的注解设计。 Spring Framework 1.x 在Sprin...
JDK成长记19:ReenranctLock(2)加锁入队的AQS底层原理 上一节,你应该学到了ReentrantLock底层基于AQS的3个小组件 state、owner、queue。并且了解了下一个线程1进行加锁修改owner和state的过程。还记得么?加锁成功后,如下图所示的状态: 首次...
PHP Composer 虚拟依赖包 – 实现按需载入钉钉对应功能模块的 php sdk 难得钉钉官方提供了完整的 api sdk,各种语言的版本的都有,而且 api 覆盖面非常完整。但是,composer 安装下来有大几十兆,这个不符合个人的品味,我想要按需加载。 于是在构思了一两次以后,今天下午开始动手实...
深入浅出ReentrantReadWriteLock源码解析 读写锁实现逻辑相对比较复杂,但是却是一个经常使用到的功能,希望将我对ReentrantReadWriteLock的源码的理解记录下来,可以对大家有帮助 前提条件 在理解ReentrantReadWriteLock时需要具...
PHP中与类名相同的方法是什么 在PHP中,类名与方法名可以相同,如果方法名和类名相同,且没有“__construct”,那么该方法会被当做构造函数。php构造函数是类中的一个特殊函数,当使用new操作符创建一个类的实例时,构造函数将会自动调用。 本教...