Linux程序编译过程详解

大家肯定都知道计算机程序设计语言通常分为机器语言、汇编语言和高级语言三类。高级语言需要通过翻译成机器语言才能执行,而翻译的方式分为两种,一种是编译型,另一种是解释型,因此我们基本上将高级语言分为两大类...
2年前
160

Linux 程序编译过程的来龙去脉

大家肯定都知道计算机程序设计语言通常分为机器语言、汇编语言和高级语言三类。高级语言需要通过翻译成机器语言才能执行,而翻译的方式分为两种,一种是编译型,另一种是解释型,因此我们基本上将高级语言分为两大类...
2年前
180

你还不会查看Linux系统CPU信息?

CPU也称为微处理器或简称为处理器。就像大脑如何控制人体一样,CPU 控制着计算机的所有部分。因此CPU被认为是计算机的大脑。 方法一、 检查 CPU 信息使用lscpu lscpu命令行应用程序从 ...
2年前
90

没有人能真正精通C++

点击参加51CTO网站内容调查问卷 作者 | Mohit Pandey 编译 | 徐杰承 任何说自己很懂C++的人可能都是在夸大其词。 我想你可能已经注意到了,是的,今天的大多数程序员都在使用Pyth...
2年前
770

“Rust难学”只是一个谎言

近年来Rust的存在感日渐升高,但是其陡峭的学习曲线似乎总是令人望而生畏。不过谷歌的一项内部调查表明,关于Rust的“难学”或许只是一种谣传。,Rust到底难不难学?谷歌有了Go,为何还要支持Rust...
2年前
2690

javascript使用异步编程原因

,所谓异步,简单来说就是一个任务分为两段,先执行第一段,再执行其他任务。当第一段有执行结果时,回到第二段。,原因,1、JavaScript是单线程。,2、为了提高CPU的利用率。它不仅提高了CPU的利...
3年前
460

火山引擎 RTC 自研音频编码器 NICO 实践之路

随着互联网技术的不断发展,越来越多的人开始尝试使用或者依赖实时音视频产品解决团队沟通与协作问题。在通话过程中,我们时常会遇到因为网络波动(如拥塞、丢包、延时和抖动等)而导致的音频卡顿、掉字或者杂音等问...
3年前
620

再议内存布局,你学会了吗?

你好,我是雨乐!,在上一篇文章C++:从技术角度聊聊RTTI中聊到了虚函数表,以及内部的部分布局。对于c++对象的内存布局一直处于似懂非懂似清非清的阶段,没有去深入了解过,所以借着这个机会,一并分析下...
3年前
440

0xc000007b最全最详细解决办法

针对运行游戏或者其他程序时发生的0xc000007b不正确,在清除几率极小的硬件故障后,基本能够锁住是通过DirectX所引起的,而且大多数情况下是DirectX 9.0问题。因为微软原版Window...
3年前
670

Node.js 是如何跑起来的

本文为来自 字节跳动-国际化电商-S 项目团队 成员的文章,已授权 ELab 发布。,疑问,NodeJS 代码是如何跑起来的,TCP 连接在 NodeJS 中是如何保持一直监听而进程不中断的,Node...
3年前
450

C++性能真的不如C吗?

,最近在知乎上看了篇帖子,题目是为什么C++没有C语言快,如下图:,,恰好之前研究过这块,所以借助本文,分析下这个问题(无意于语言之争,单纯是从技术角度)。,众所周知,C++兼容了C的所有功能,显然从...
3年前
180

动图图解 | UDP就一定比TCP快吗?

,话说,UDP比TCP快吗?,相信就算不是八股文老手,也会下意识的脱口而出:"是"。,这要追问为什么,估计大家也能说出个大概。,但这也让人好奇,用UDP就一定比用TCP快吗?什么情况下用UDP会比用T...
3年前
430

Docker 基础: 具名、匿名挂载介绍

,今天给大家聊聊docker具名、匿名挂载的相关知识,一起来学学吧!​​​​​,​,匿名挂载就是指定容器内路径,dockers run 每挂载一个目录就会宿主主机自动创建一个随机字符串的目录。目录/v...
3年前
120

C++ 20 协程 Coroutine之剖析

我们来剖析一下协程的过程。通过这个剖析,希望达到梳理协程几个重要概念的关系,把这些点串起来。所以在概念参考我们列出了相应的概念文字。,C++20协程在启动前,开始会new 一个协程状态(corouti...
3年前
330

整洁架构之CSS

作者 | 李光毅,虽然开发工具早已经从 preprocessor 进化到了 styled component 甚至是 functional css,但在我看来新的工具并没有让我们的样式代码写的更好,只...
4年前
540

C++ 20 协程 Coroutine

C++ 20有一个新玩意,协程。这玩意对C++的未来可能是重要一环,也会是让C++成为服务器编程有力工具。,对C++20的协程,最简单的理解协程是可以重入的特殊函数。就是这个函数在执行的过程,可以(通...
4年前
410

客户端单元测试实践-C++篇

我们团队在淘宝中主要负责BehaviX模块,代码主要是一些逻辑功能,很少涉及到UI,为了减少双端不一致问题、提高性能,我们采用了将核心代码C++化的策略。由于团队项目偏底层,测试同学难以完全覆盖,回归...
4年前
310

2022年CSS都有哪些更新?

,大家好,我是 CUGGZ。,2022 年 CSS 新增了很多特性,例如容器查询、父选择器、子网格、级联层、新视口单位等,多项期待已久的功能已集成到常青浏览器(自动升级到最新版本的浏览器,包括 Chr...
4年前
950

C语言和C++的区别和联系

,首先C++和C语言本来就是两种不同的编程语言,但C++确实是对C语言的扩充和延伸,并且对C语言提供后向兼容的能力。对于有些人说的C++完全就包含了C语言的说法也并没有错。,,C++一开始被本贾尼·斯...
4年前
640

C++ 虚函数表剖析

,为了实现C++的多态,C++使用了一种动态绑定的技术。这个技术的核心是虚函数表(下文简称虚表)。,每个包含了虚函数的类都包含一个虚表。,我们知道,当一个类(A)继承另一个类(B)时,类A会继承类B的...
4年前
480

跨全端SDK技术演进

细想,团队进行跨平台开发已有三年有余,也是集团里面C++方向里比较早涉及该领域的部门之一,伴随业界跨平台技术发展与演进,我们也沉淀了一整套基于C++的跨平台技术体系。,关于为什么要选择跨平台的实现方式...
4年前
480

Node.js C++ 层的任务管理

好久没更新了,今天写个笔记。,我们都知道 Node.js 是基于事件循环来运行的,本质上是一个生产者 / 消费者模型,所以就少不了任务的管理机制,不过本文不是介绍事件循环中的任务管理,而是 C++ 层...
4年前
230

为什么要学 C++?

C++是一种非常强大的编程语言,在许多领域都得到了广泛的应用。那些刚接触 C++ 编程语言或想掌握该语言的人通常会有一个问题:为何那么麻烦呢?,这种编程语言相当古老,不像 Python 或 JavaS...
5年前
560

从零开始用C++开发一款游戏引擎

译者 | 朱先忠,审校 | 孙淑娟,游戏开发一直很能激励学生学习高级计算机科学。可能有些人认为游戏是孩子们喜欢的,但对于标准的计算机科学课程来说,游戏开发其实是少数几个能利用当中所有知识的领域。,游戏...
5年前
610

洞察 C# 终结队列引发的内存泄漏

C# 程序内存泄漏的诱发因素​有很多,但从顶层原理上来说,就是该销毁的 用户根​ 对象没有被销毁,从而导致内存中意料之外的对象无限堆积,导致内存暴涨,最终崩溃,这其中的一个用户根就是 终结器队列,这一...
5年前
290