objective-c objective机制 内存
java 内存模型
java内存模型(memory model)定义了java虚拟机如何与计算机内存交互。JVM将内存主要分为栈(stack)内存和堆(heap)内存。每当我们声明新的变量和对象、调用新的方法、声明String或执行类似的操作时,JVM都会从堆栈内存或堆空间为这些操作指定内存。 ![The Java M ......
如何计算一个实例占用多少内存?
我们都知道CPU和内存是程序最为重要的两类指标,那么有多少人真正想过这个问题:一个类型(值类型或者引用类型)的实例在内存中究竟占多少字节?我们很多人都回答不上来。其实C#提供了一些用于计算大小的操作符和API,但是它们都不能完全解决我刚才提出的问题。本文提供了一种计算值类型和引用类型实例所占内存字节... ......
【网络基础】SSL/TLS协议运行机制的概述
1 前言 互联网的通信安全,建立在SSL/TLS协议之上。 本文简要介绍SSL/TLS协议的运行机制。文章的重点是设计思想和运行过程,不涉及具体的实现细节。如果想了解这方面的内容,请参阅RFC文档。 2 作用 不使用SSL/TLS的HTTP通信,就是不加密的通信。所有信息明文传播,带来了三大风险。 ......
Web缓存机制之http缓存
啥是缓存? 当从客户端向服务端获取资源,需要建立链接,资源传输等一系列消耗,为了方便下次获取的资源更快,性能开销更小,是不是可以把第一次获取的资源储存起来,下次直接拿呢,没错这就是缓存。 存哪了? 好了知道什么是缓存了,那么缓存具体存哪了? Service Worker W3C 组织早在 2014 ......
python中可以节省内存的机制-生成器
nums = [1, 2, 3, 4, 5, 6] squares_it = (n ** 2 for n in nums) # squares_it 得到一个生成器,仅在调用时动态生成nums的平方squares_lst = [n ** 2 for n in nums] # squares_lst ......
区块链基础之共识机制
## 1.1共识机制 ### 1.1.1核心定义 区块链上的共识机制主要解决由谁来构造区块,以及如何维护区块链统一的问题 ### 1.1.2共识机制分类 ![共识机制分类](https://upload-images.jianshu.io/upload_images/21415382-3fc906c ......
linux 性能自我学习 ———— 关于内存 [七]
### 前言 内存的基本知识,将在操作系统篇中详细介绍,这里只说明如何排查问题。 ### 正文 内存的分配和回收: 在malloc 是c 标准库中的内存分配函数,对应到系统调用上,有两种实现方式,一种是brk()和 mmap() 对于小块内存,小于128k 使用brk来分配,也就是通过移动堆栈的位置 ......
VB6程序内存泄漏诊断
### 生成 dump 文件 1. 如果要分析 32bit 程序问题, 需要使用 32-bit dump文件, 比如 taskmgr.exe 32bit版, DebugDiag 工具. taskmgr.exe 32bit版路径是" " C:\Windows\SysWOW64\Taskmgr.exe ......
Python潮流周刊#5:并发一百万个任务要用多少内存?
你好,我是猫哥。这里记录每周值得分享的 Python 及通用技术内容,部分为英文,已在小标题注明。(标题取自其中一则分享,不代表全部内容都是该主题,特此声明。) 博客原文:[https://pythoncat.top/posts/2023-06-03-weekly5](https://pythonc ......
【Linux中断】Linux系统中断机制简述
# Linux中断 ## Linux中断处理过程 1.使能中断,初始化相应的寄存器 2.注册中断服务函数,也就是向irqTable数组的指定标号处写入中断服务函数 3.中断发生以后进入IRQ中断服务函数,IRQ的中断服务函数在irqTable里面查找具体的中断处理函数,找到以后执行相应的中断处理函数 ......
linux 内存管理 ------ malloc 的内存分配
低于128K的内存分配采用具有内存池缓存机制的 brk 方式,可以减少缺页中断、系统调用的次数。高于128K时采用匿名内存映射区的mmap方式, 避免产生太大的内存碎片 如果分配后的虚拟内存没有被访问的话,虚拟内存是不会映射到物理内存的,这样就不会占用物理内存了。只有在访问已分配的虚拟地址空间的时候 ......
Java内存模型
![](https://img2023.cnblogs.com/blog/1220983/202306/1220983-20230603114555922-461946045.png) ## 一、Java内存模型简介 ### 1. Java内存模型的“底层原理” 从Java代码到CPU指令的变化过程 ......
整数在内存中的天才存储方案
加法和减法是计算机中最基本的运算,计算机时时刻刻都离不开它们,所以它们由硬件直接支持。为了提高加减法的运算效率,硬件电路要设计得尽量简单。对于有符号数,内存要区分符号位和数值位,对于人脑来说,很容易辨别,但是对于计算机来说,就要设计专门的电路:有符号加、减,这无疑增加了硬件的复杂性,增加了计算的时间 ......
深入剖析Linux IO原理和几种零拷贝机制的实现
https://www.cnblogs.com/lsgxeva/p/11619464.html 来源 https://zhuanlan.zhihu.com/p/83398714 零壹技术栈 公众号【零壹技术栈】 前言 零拷贝(Zero-copy)技术指在计算机执行操作时,CPU 不需要先将数据从一个 ......
ASP.Net Core 刷新界面,内存持续增加不释放问题。
今天发现.Net Core 6程序,运行在一台Linux 2核2G内存的服务器中,响应静态文件特别慢。于是一查,发现有个进程:kswapd0 进程 占用CPU 都200%。 ......
linux服务器cache占用内存过高导致内存不足
问题描述 linux服务器内存不足触发监控报警。 K8S在创建pod之后启动失败,日志报错如下: 问题检查 登录服务器发现服务器8G内存正在被使用的和空闲内存大概4G,还有大概4G被cache占用 这个cache占用了大量内存,那么这个cache时干什么用的? Linux 中的缓存称为Page Ca ......
可执行文件的内存模型,变量的值是放在栈上还是放在堆上
作者:@古明地盆喜欢这篇文章的话,就点个关注吧,或者关注一下我的公众号也可以,会持续分享高质量Python文章,以及其它相关内容。:点击查看公众号 楔子 作为开发者,我们一辈子会经历很多工具、框架和语言,但是这些东西无论怎么变,底层逻辑都是不变的。所以今天我们就回头重新思考编程中那些耳熟能详却又似懂 ......
一文告诉你什么是内存对齐?
作者:@古明地盆喜欢这篇文章的话,就点个关注吧,或者关注一下我的公众号也可以,会持续分享高质量Python文章,以及其它相关内容。:点击查看公众号 楔子 我们来解释一下什么是内存对齐,先来看个栗子: #include <stdio.h> typedef struct { long a; int b; ......
TypeError: 'dict_keys' object is not subscriptable
001、python报错 >>> dict1 = {"aa":300, "bb":500, "cc":400, "dd":700} >>> dict1 {'aa': 300, 'bb': 500, 'cc': 400, 'dd': 700} >>> dict1.keys() dict_keys([' ......
AttributeError: 'dict_values' object has no attribute 'index'
001、python报错如下: >>> dict1 = {"aa":700, "bb":400, "cc":300, "dd":600} >>> dict1.values().index(300) Traceback (most recent call last): File "<stdin>", ......
《深度剖析CPython解释器》16. Python函数机制的深度解析(第三部分): 闭包的底层实现以及调用
https://www.cnblogs.com/traditional/p/13580694.html 楔子 上一篇我们看了函数是如何调用的,这一次我们看一下函数中局部变量的访问、以及闭包相关的知识。 函数中局部变量的访问 我们说过函数的参数和函数内部定义的变量都属于局部变量,所以它也一样是通过静态 ......
[UE4]资源异步加载(Assets Asynchronous Loading)与内存释放(Free Memory)
为什么需要异步加载资源,因为当一次性加载的资源较多或者单个资源较大时,普通的LoadObject()方式会阻塞引擎的主线程。 假设测试工程叫TestTD4,自定义Character叫ATestTD4Character(头文件为TestTD4Character.h) 假设在Content/Assets ......
【MySQL】【内存】Buffer Pool是什么?有什么作用?
1 前言 这节我们来看看MySQL 的 Buffer Pool哈。 2 为什么要有 Buffer Pool? 虽然说 MySQL 的数据是存储在磁盘里的,但是也不能每次都从磁盘里面读取数据,这样性能是极差的。 要想提升查询性能,加个缓存就行了嘛。所以,当数据从磁盘中取出后,缓存内存中,下次查询同样的 ......
UE4 Standalone Object继承树
obj classes Object (48) GCObjectReferencer (120) TextBuffer (88) Field (56) Struct (192) ScriptStruct (208) MovieSceneKeyStructType (400) UserDefinedS ......
内存与地址
# 内存 *** ## 1.存储体的存储结构 > 存储的分层思想被用来划分存储体的实际结构,这可以更加有效的管理程序 ![存储层次](https://liu-materials.oss-cn-hangzhou.aliyuncs.com/computer%20organization/%E5%AD%9 ......
对隔离级别、事务并发问题、当前读和快照读、相关锁机制的思考
InnoDB存储引擎涉及事务的四大隔离级别(RU)读未提交、(RC)读已提交、(RR)可重复读、(Serializable)串行化 相对事务并发产生的问题:脏读、不可重复读、幻读 隔离级别对应事务:RU什么都解决不了,RC解决脏读、RR解决脏读和不可重复读、Serializable都解决 其中涉及的 ......
【二十二】object()函数(1)
### 【二十二】object()函数(1) #### 【1】作用 - Object类是Python中所有类的基类 - 如果定义一个类时没有指定继承哪个类,则默认继承object类。 - object没有定义__dict__ - 所以不能对object类实例对象尝试设置属性。 #### 【2】语法 ......
【十七】Python中的反射机制(4)
### 【十七】Python中的反射机制(4) #### 【1】什么是反射? - 反射指在程序运行过程中可以动态获取对象的信息。 - **是通过字符串的形式**,导入模块; - 通过字符串的形式,去模块**寻找指定函数**,并执行。 - 利用字符串的形式去对象中操作成员,一种**基于字符串的驱动** ......