虫虫首页| 资源下载| 资源专辑| 精品软件
登录| 注册

您现在的位置是:虫虫下载站 > 技术阅读

技术阅读

  • 【性能优化】lock-free在召回引擎中的实现

    2024-02-10
  •   资源简介:大家好!在我们的工作中,多线程编程是一件太稀松平常的事。在多线程环境下操作一个变量或者一块缓存,如果不对其操作加以限制,轻则变量值或者缓存内容不符合预期,重则会产生异常,导致进程崩溃。为了解决这个问题,操作系统提供了锁、信号量以及条件变量等几种线程同步机制供我们使用。如果每次操作都使用上述机制,在某...

  • 万字长文 | STL 算法总结

    2024-02-10
  •   资源简介:本篇所有算法源码均已同步收录 GitHub 仓库,欢迎点个小⭐️:https://github.com/rongweihe/CPPNotes/tree/master/STL-source-code-notesSTL 算法博大精深,涵盖范围之广,其算法之大观,细节之深入,泛型思维之于字里行间,每每阅读都会有不同的收获。STL 将很多常见的逻辑都封装为现成的算法,熟悉这些算法的使用和实现...

  • C++ Best Practices (C++最佳实践)翻译与阅读笔记

    2024-02-10
  •   资源简介:这个翻译的内容真不错,分享给大家。翻译原文链接在这里:https://zhuanlan.zhihu.com/p/427778091推荐大家直接看原文。干货开始:这本书的副标题是:45ish Simple Rules with Specific Action items for better C++ ,这本书是由公司大佬推荐的, 个人认为有必要掌握一下这45条最佳实践, 可以很大程度上提升代码的可读性和...

  • 转眼就入职微软6个月了,聊聊感受

    2024-02-10
  •   资源简介:大家好,我是小牛上班之后,就感觉时间过的飞快,总感觉毕业那会老伙计们聚餐依依惜别的景象还在眼前,但已经离开学校半年了,今天来讲讲入职半年生活体会吧。实习熟悉我的小伙伴知道,我之前在微软实习了一段时间,但那会由于疫情原因,也就在公司呆了两周左右,但也就是这段实习经历,让我找到了一种自己想要的生活方式。...

  • C++服务性能优化的道与术-道篇:阿姆达尔定律

    2024-02-10
  •   资源简介:开场白在之前的文章 《2004:当CPU温和地走入那个良夜》 中我讲到了2000年后摩尔定律的终结,CPU时钟频率定格,多核成为CPU发展的新方向,并行计算成为趋势。在谈到并行计算的时候我们不得不提的就是阿姆达尔定律。阿姆达尔定律即 Amdahl's Law。是由美国计算机科学家 Gene Amdahl (1922/11/16 – 2015/11/10)在 1967 年...

  • C++ Trick:右值引用、万能引用傻傻分不清楚

    2024-02-10
  •   资源简介:C++11标准颁布距今已经十年了,在这个标准中引入了很多新的语言特性,在进一步强化C++的同时,也劝退了很多人,其中就包含右值引用。T&& Doesn’t Always Mean “Rvalue Reference”by Scott MeyersScott Meyers曾经说过:T&&并不总是表示右值引用(rvalue reference)。作为函数参数的&&没错。&& 这两个符号,可能是初学C+...

  • 新年快乐,礼物奉上

    2024-02-10
  •   资源简介:程序喵祝大家新年快乐,和几位技术圈优质公众号联合送大家几本书。赠送规则 本次【8个高质量公众号】联合一起赞助,参与方式如下:1. 在下方每个公众号后台发送暗号「20220213」均可获得一张「抽奖码」,但每个号的抽奖码都是独家唯一的,每多扫描一张抽奖码会增多一次中奖机会,点击参与列表还可以查看自己的中奖概率排名...

  • 不要再无脑背诵面向对象三大特性了

    2024-02-10
  •   资源简介:作者:二律背反链接:https://www.zhihu.com/question/305042684/answer/557460817OOP有且只有一个价值:应对需求的变化。哪里的需求有变化,哪里就要OOP;哪里的需求不变,哪里就不需要OOP。一个hello world我可以一句话搞定、也可以写四五个class用两三种设计模式去实现,我不是吃饱了撑的,而是因为我的客户告诉我需求会...

  • 知乎高赞:为什么有些大公司技术弱爆了?

    2024-02-10
  •   资源简介:本文整理自知乎上的同名讨论帖:《为什么有些大公司技术弱爆了?》,版权归原作者所有。原文地址:www.zhihu.com/question/3203922有网友提问:今年年初,到一家互联网公司实习,该公司是国内行业龙头。不过技术和管理方面,却弱爆了。那里的程序员,每天都在看邮件,查问题工单。这些问题,多半是他们设计不当,造成的。代...

  • 张恭庆院士:数学的意义(最全面的解释)

    2024-02-10
  •   资源简介:数学既是一种文化、一种“思想的体操”,更是现代理性文化的核心。马克思说:“一门科学只有当它达到了能够成功地运用数学时,才算真正发展了。”在前几次科技革命中,数学大都起到先导和支柱作用。我们不能要求决策者本人一定要懂得很多数学,但至少要经常想想工作中有没有数学问题需要请数学家来咨询。因为数学是科技创新...

  • 图解|Linux内存背后的那些神秘往事

    2024-02-10
  •   资源简介:前言大家好,我的朋友们!CPU、IO、磁盘、内存可以说是影响计算机性能关键因素,今天就聊探究下内存的那些事儿。内存为进程的运行提供物理空间,同时作为快速CPU和慢速磁盘之间的适配器,可以说是个非常重要的角色。通过本文你将了解到以下内容:本文均围绕Linux操作系统展开,话不多说,我们开始吧!虚拟内存机制当要学习...

  • 看下有多少人对Java感兴趣?

    2024-02-10
  •   资源简介:话不多说,干货走起。1、HashMap面试第一题必问的 HashMap,挺考验Javaer的基础功底的,别问为啥放在这,因为重要!HashMap具有如下特性:HashMap 的存取是没有顺序的。KV 均允许为 NULL。多线程情况下该类不安全,可以考虑用 HashTable。JDk8底层是数组 + 链表 + 红黑树,JDK7底层是数组 + 链表。初始容量和装载因子是决定...

  • 当我们在谈论cpu指令乱序的时候,究竟在谈论什么?

    2024-02-10
  •   资源简介:原文:https://zhuanlan.zhihu.com/p/45808885很多现代高级语言多提供了多线程并发技术,今天服务器CPU基本上都是多核架构,在Java中,JVM能够根据处理器特性(CPU多级缓存系统、多核处理器等)适当对机器指令进行重排序,最大限度发挥机器性能。Java中的指令重排有两次,第一次发生在将字节码编译成机器码的阶段,第二次发...

  • 被知乎大佬嘲讽后的一个月,我重新研究了一下内联函数

    2024-02-10
  •   资源简介:前言这绝不仅仅是一篇讲内联意义的文章参考我的学习过程,可能对你的知识整合有很大帮助之前写了一篇总结c++面试的文章,被大佬纠出来很多关于内联的问题与错误。抱着不误导别人的态度(也因为上篇文章承诺要给大家深入分析一下内联函数),我在最近的一个月里抽了很多时间去重新研究inline,确实学到了很多以前不了解的知...

  • Java这几本经典书籍,读透一本上一个台阶

    2024-02-10
  •   资源简介:相信每位程序员都不甘心只做一个“代码机器”,都希望自己的IT之路可以走得更长远!成为一名优秀的Java工程师需要掌握的知识相当多,除了Java编程语言外,操作系统、数据结构与算法、数据库、常用框架、设计模式、网站架构等等诸多技能也都是统统需要掌握。学习Java有哪些必读的经典图书呢?下面为你推荐几本系统学习Java语...

  • 好代码和坏代码

    2024-02-10
  •   资源简介:(文末有福利)要写出好代码,首先需要提升品位。很多软件工程师写不好代码,在评审他人的代码时也看不出问题,就是因为缺乏对好代码标准的认识。现在还有太多的软件工程师认为,代码只要可以正确执行就可以了。这是一种非常低的评价标准,很多重要的方面都被忽视了。好代码的特性好代码具有以下特性。1. 鲁棒(Solid and Rob...

  • [译] 我做基础架构学到的 42 件事

    2024-02-09
  •   资源简介:译者序最近读到了分布式系统研究者 Mahesh Balakrishnan 的一篇博客《42 things I learned from building a production database》。同样做基础架构,看完大佬总结的经验后拍案叫绝,其中有几条简直是真知灼见,故翻译了全文。Mahesh Balakrishnan 是 Facebook Delos 项目的负责人。Delos 对标 ZooKeeper,关于 Delos 更多...

  • 终于有大佬把"计算机底层原理"全部总结出来了

    2024-02-09
  •   资源简介:计算机的历史算盘和机械计算机有很多民族自豪感爆棚的兄弟会把算盘当成计算机的起源,还有爆破天的兄弟会把阴阳当成二进制0和1的起源,我觉得这件事儿就有点儿不靠谱了如果非要追究计算机的鼻祖,那就得讲讲17世纪前欧洲的故事,最早的计算机其实是计算器,就是算数用的,在欧洲工业工业革命的时候,大量的工业模具需要计算...

  • 老兵精讲:C++性能优化

    2024-02-09
  •   资源简介:前言性能优化不管是从方法论,还是从实践上都有很多东西。本文从 C++ 语本身入手,介绍了一些性能优化的方法,希望能做到简洁实用。实例1在开始本文的内容之前,让我们看段小程序:// 获取一个整数对应10近制的位数uint32_t digits10_v1(uint64_t v) {    uint32_t result = 0;    do {        ++r...

  • Linux 性能优化全景指南

    2024-02-09
  •   资源简介:Part1  Linux性能优化1、性能优化性能指标高并发和响应快对应着性能优化的两个核心指标:吞吐和延时应用负载角度:直接影响了产品终端的用户体验系统资源角度:资源使用率、饱和度等性能问题的本质就是系统资源已经到达瓶颈,但请求的处理还不够快,无法支撑更多的请求。性能分析实际上就是找出应用或系统的瓶颈,设法去避...

  • 一位大佬对于 Qt 学习的最全总结(三万字干货)

    2024-02-09
  •   资源简介:点击上方“程序喵大人”,选择“关注/置顶/星标公众号”干货福利,第一时间送达!分享一位大佬 Github 上关于 Qt 学习的总结。作者无私分享了一百多个自定义控件以及几本 Qt 的书籍(C++ Qt),特此引用这个大佬的干货,左下角可阅读原文进入GitHub原分享地址。一、个人总结的经验语录学习编程是一个渐变的过程,1年精通,3...

  • 居家隔离的第39天

    2024-02-09
  •   资源简介:大家好,我是程序喵。最近好多朋友一直关心我过得怎么样,这篇文章其实想发很久了,算是对大家的一个报备,我一切都好,至于具体怎么样,毕竟关了一个多月,请各位允许我矫情下,忍住阅读完此文,谢谢!1这是我不能出门的第39天今天早上起来,打开手机,一个好消息,一个坏消息。小区群里面,居委主任通知:是的,我们又又...

  • 路由器是如何工作的?

    2024-02-09
  •   资源简介:点击上方“程序喵大人”,选择“置顶/星标公众号”干货福利,第一时间送达!什么叫路由?路由器的英文是 Router,也就是「找路的工具」。找什么路?寻找各个网络节点之间的路。换句话说,路由器就像是快递中转站,包裹会经过一个个的中转站,从遥远的地方寄到你家附近,数据包也是一样。路由器是连接两个网络的硬件设备,承...

  • C++的单例模式为什么不直接全部使用static,而是非要实例化一个对象?

    2024-02-09
  •   资源简介:开场前段时间我在知乎回答了这样一个问题:为什么C++单例模式不能直接全部使用 static变量和 static函数呢?如果全部使用 static的话,是不是也不会有多线程的问题了?而且“类型::方法”的访问方式比起先getInstance()再访问难道不是更加简单清晰吗?(还是说是为了附和 “单例” 这样一个字面上的意思)//大概这个样子cla...

  • 这位非科班出身的读者好猛!(附C++复习路线)

    2024-02-09
  •   资源简介:哈喽大家好,我是厨子。好久不见,甚是想念。假期过的可真快,一眨眼就结束了。假期七天光打球了,七天打了六场,也没咋学习和写文章,后面会加把劲滴。之前答应大家,会邀请一些,刚参加完秋招的 offer 收割机,给大家分享一下,面试心得和复习路线。今天分享的这位老哥是真的猛,我们一起往下看吧。这篇文章会对正在准备...

  • 一个逻辑完备的线程池

    2024-02-09
  •   资源简介:开源项目Workflow中有个重要的基础模块:代码仅300行的C语言线程池。本文会伴随源码分析,而逻辑完备、对称无差别的特点于第3部分开始欢迎跳阅, 或直接到Github主页上围观代码????https://github.com/sogou/workflow/blob/master/src/kernel/thrdpool.c???? 0 - Workflow的thrdpool作为目前Github上炙手可热的异步调度引擎...

  • 现代C++测试工具链(是时候抛弃gtest/google bench了)

    2024-02-09
  •   资源简介:gtest的问题gtest需要安装有时候带来很多不方便,比如需要经常切换gcc和clang的时候就比较麻烦,安装的gtest可能在另一个编译器下编译不过, 编写跨平台程序的时候需要多次安装gtest,非常不便。另外一个问题是网络原因,下载安装gtest或者git上拉gtest都可能因为网络原因失败。现代C++ unit test库除了gtest之外,还有很多...

  • 大龄码农从北京到荷兰的躺平生活

    2024-02-09
  •   资源简介:今天在知乎刷到了一篇大龄码农从北京到荷兰的日记,看完后着实令人羡慕不已,国外不仅生活环境和工作强度,都要比国内轻松很多,以后如果结束北漂出国也将是一条不错的路,以下为原文。作者:小李在荷兰 | 编辑:对白的算法屋 | 程序喵https://zhuanlan.zhihu.com/p/469261829一. 背景介绍光阴似箭,今年已经41岁的老码农一...

  • 深入理解 Linux CPU 上下文切换

    2024-02-09
  •   资源简介:我们都知道 Linux 是一个多任务操作系统,它支持的任务同时运行的数量远远大于 CPU 的数量。当然,这些任务实际上并不是同时运行的(Single CPU),而是因为系统在短时间内将 CPU 轮流分配给任务,造成了多个任务同时运行的假象。CPU 上下文(CPU Context) 在每个任务运行之前,CPU 需要知道在哪里加载和启动任务。这意味...

  • 外部函数如何访问其它类的私有成员

    2024-02-09
  •   资源简介:外部函数如何访问其它类的私有成员,你可能想到的是友元,然而友元会侵入原class的代码。今天看到一个黑魔法:#include <cstdlib>#include <iostream>class Bank {private: double money = 999;public: void check() { std::cout << "check:" << money << "\n"; }};template<auto M>struct Tunnel;template<class T, class...