大家好,我是飞哥!相信大家都听说过CentOS即将停止维护的事。今天就这件事,我来聊聊我的看法。我认为这在国内的技术圈内是个利大于弊的好消息。关于这件事,可能大部分同学还都只是粗浅地吃过1-2次瓜而已,并没有搞懂其中的缘由。其背景是这样的。在过去的很长一段时间里,国内绝大部分互联网公司的服务器上所安装的操作系统都是总部位于美国北卡州红帽公司的CentOS。据统计,CentOS在服务器领域的占有率高达90%。其实CentOS只是红帽旗下的一个发行版而已。另外两个是Fedora和RHEL(RedHatLinux)。这三个发行版的主要区别是在于更新策略的不同。Fedora是一个先行试验版本,会快速迭
前言做线上帧率监控上报时,少不了需要弄明白如何通过代码获取实时帧率的需求,这篇文章通过图解配合Flutter性能调试工具的方式一步步通俗易懂地让你明白获取帧率的基础知识,以后再也不愁看不懂调试工具上指标了。说说ListFlutter中通过如下方式监听帧率,addT
前言做线上帧率监控上报时,少不了需要弄明白如何通过代码获取实时帧率的需求,这篇文章通过图解配合Flutter性能调试工具的方式一步步通俗易懂地让你明白获取帧率的基础知识,以后再也不愁看不懂调试工具上指标了。说说ListFlutter中通过如下方式监听帧率,addT
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助相信用过vue的小伙伴,肯定被面试官问过这样一个问题:在vue中动态的引入图片为什么要使用require有些小伙伴,可能会轻蔑一笑:呵,就这,因为动态添加src被当做静态资源处理了,没有进行编译,所以要加上require,我倒着都能背出来......emmm...乍一看好像说的很有道理啊,但是仔细一看,这句话说的到底是个啥?针对上面的回答,我不禁有如下几个疑问:什么是静态资源?为什么动态添加的src会被当做的静态的资源?没有进行编译,是指为是什么没有被编译?加上require为什么能正确的引入资源,是因为加上require就能编译了?
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助相信用过vue的小伙伴,肯定被面试官问过这样一个问题:在vue中动态的引入图片为什么要使用require有些小伙伴,可能会轻蔑一笑:呵,就这,因为动态添加src被当做静态资源处理了,没有进行编译,所以要加上require,我倒着都能背出来......emmm...乍一看好像说的很有道理啊,但是仔细一看,这句话说的到底是个啥?针对上面的回答,我不禁有如下几个疑问:什么是静态资源?为什么动态添加的src会被当做的静态的资源?没有进行编译,是指为是什么没有被编译?加上require为什么能正确的引入资源,是因为加上require就能编译了?
上一篇文章我们简要介绍了easylogging++的主要功能。easylogging++中有很多特性是通过宏来控制的,今天我们就来聊聊这些宏:debug输出流宏定义ELPP_INTERNAL_DEBUGGING_OUT_INFO(目前相当于std::cout)ELPP_INTERNAL_DEBUGGING_OUT_ERROR(目前相当于std::cerr)ELPP_INTERNAL_DEBUGGING_ENDL(目前相当于std::endl)字符串包装宏ELPP_INTERNAL_DEBUGGING_MSG(目前就是字符串本身)断言宏ELPP_DISABLE_ASSERT(禁用断言)ELPP_
上一篇文章我们简要介绍了easylogging++的主要功能。easylogging++中有很多特性是通过宏来控制的,今天我们就来聊聊这些宏:debug输出流宏定义ELPP_INTERNAL_DEBUGGING_OUT_INFO(目前相当于std::cout)ELPP_INTERNAL_DEBUGGING_OUT_ERROR(目前相当于std::cerr)ELPP_INTERNAL_DEBUGGING_ENDL(目前相当于std::endl)字符串包装宏ELPP_INTERNAL_DEBUGGING_MSG(目前就是字符串本身)断言宏ELPP_DISABLE_ASSERT(禁用断言)ELPP_
目录线程理论线程和进程的区别进程线程进程间通讯管道消息队列信号量共享内存套接字消息队列和管道的区别线程间通信共享内存消息传递线程的五种状态和生命周期线程阻塞的三种情况线程结束的三种方式线程的上下文线程调度器线程调度类型抢占式调度协同式调度调度算法先进先出算法(FIFO)最短耗时任务优先算法(SJF)时间片轮转算法(RoundRobin)JVM的线程调度实现线程调度器让线程让出cpu的情况守护线程和用户线程的区别线程安全线程不安全的原因解决方法线程实践创建线程的四种方式几种方式的区别线程的基本方法waitsleepyieldinterruptjoinnotify其他方法sleep()和wait(
目录线程理论线程和进程的区别进程线程进程间通讯管道消息队列信号量共享内存套接字消息队列和管道的区别线程间通信共享内存消息传递线程的五种状态和生命周期线程阻塞的三种情况线程结束的三种方式线程的上下文线程调度器线程调度类型抢占式调度协同式调度调度算法先进先出算法(FIFO)最短耗时任务优先算法(SJF)时间片轮转算法(RoundRobin)JVM的线程调度实现线程调度器让线程让出cpu的情况守护线程和用户线程的区别线程安全线程不安全的原因解决方法线程实践创建线程的四种方式几种方式的区别线程的基本方法waitsleepyieldinterruptjoinnotify其他方法sleep()和wait(
如何讲清楚一件事我相信很多人都很困惑也很无助,尤其是在晋升场合,在向上汇报或者是做大范围分享的时候,恨不得找个地缝钻进去。很多时候我们常常是这样安慰自己,我是实干派技术人,不需要那些花里胡哨的东西,我技术过硬比什么都重要。曾经一度我也是这样认为,最后改变我这个想法的是一句话:如果你讲不清楚多半是想不清楚,如果你都想不清楚如何能够带领更多人拿到结果? 所以我总结了一些关于如何讲清楚的一些技巧,以供大家参考。 01 少做预设多换位在讲的过程中第一个陷阱就是以自我为中心,在按照自己的思路讲。出现这个现象的本质就是做了大量的预设,假设我的受众都是和我一样的成长环境,一样的专业背景,一样的心态和目的