Python中的弱引用与基础类型支持情况探究

## 背景 最近有一个业务场景需要用Python自行实现一个简单的LRU cache,不可避免的接触到了弱引用这一概念,这里记录一下。 ## 强引用 Python内存回收由垃圾回收器自动管理,当一个对象的引用计数归0时,其内存就可能被回收掉,而引用计数器的数值其实就是代表有多少个强引用指向该对象,我

快学会这个技能-.NET API拦截技法

大家好,我是沙漠尽头的狼。 本文先抛出以下问题,请在文中寻找答案,可在评论区回答: 什么是API拦截? 一个方法被很多地方调用,怎么在不修改这个方法源码情况下,记录这个方法调用的前后时间? 同2,不修改源码的情况下,怎么对方法的参数进行校正(篡改)? 同3,不修改源码的情况下,怎么对方法的返回值进行

如何解决过度拟合

更多精彩内容,欢迎关注公众号:数量技术宅,也可添加技术宅个人微信号:sljsz01,与我交流。 为何产生过度拟合 我们在做数据分析建模,或是量化策略回测的过程中,会模型在训练时过度拟合了历史数据(回测),导致在新数据上的预测(实盘)效果不佳。造成这种现象有以下几种原因: 一是这可能是因为模型过于复杂

MySQL全面瓦解30:备份与恢复

> [合辑地址:MySQL全面瓦解](https://www.cnblogs.com/wzh2010/category/1859594.html "合辑地址:MySQL全面瓦解") # 1 为什么需要数据库备份 - 灾难恢复:当发生数据灾难的时候,需要对损坏的数据进行恢复和还原 - 需求的变更或者回

贝塞尔曲线文字路径

译者注 这篇文章原本是之前翻译 《曲线艺术编程》系列第八章--贝塞尔曲线一章中引用的内容 作者提到过知识点可参考这篇文章以及优化和线性插值所以我也时分想仔细看一篇 在当时其实打开看过一眼,其中有看到导数部分,当时就怕翻译错了,所以我回头抽空复习了一下数学的导数部分。说实话,毕业后的工作与生活中从未用

安全多方计算(1):不经意传输协议

学习&转载文章:安全多方计算(1):不经意传输协议 前言 在安全多方计算系列的首篇文章(安全多方计算之前世今生)中,我们提到了百万富翁问题,并提供了百万富翁问题的通俗解法,该通俗解法可按图1简单回顾。 图1 百万富翁问题通俗解法 百万富翁问题通俗解法场景中,我们可以将Alice和Bob的诉求总结如下

程序员减少BUG的两个小妙招!

我们说衡量一个程序员水平的高低往往有很多因素,但有一个因素至关重要即代码质量。 如果程序员写的功能在测试阶段就被频繁打回,上线了之后,用户反馈这里有问题那里有问题,大家可以想像这样的程序员水平能高到哪里去,纯粹一个“挖坑”程序员无疑。 那有没有什么窍门能减少程序出bug的概率呢? 这里作者分享两个我自己总结的减少程序出bug的小窍门,希望对你有所帮助。

团队如何选择合适的Git分支策略?

现代软件开发过程中要实现高效的团队协作,需要使用代码分支管理工具实现代码的共享、追溯、回滚及维护等功能。目前流行的代码管理工具,包括CVS,SVN,Git,Mercurial等。 相比CVS和SVN的集中管理,Git具有非常明显的优势,**例如:去中心化的代码管理方式减少了开发者对中心服务器的依赖,

[apue] 进程环境那些事儿

atexit 注册的处理器中可以再调 atexit 或 exit 吗?putenv 或 setenv 增加一个环境变量后 environ 指针地址为什么变了?setjmp & longjmp 跨函数跳转后自动变量为什么回退了?设置 RLIMIT_NPROC 为 10 为何连一个子进程也 fork 不了?设置 RLIMIT_NOFILE 后为何 sysconf 的返回值也受到了影响?本文为你一一解答

生活规划

生活规划 0. 我希望近期做掉的事情(DDL: 2023.10.14 23:30) 最优化方法回看 物理实验报告+预习报告 (DDL: 2023.10.12) 笛卡尔第二个沉思 (DDL: 2023.10.12) 学物理 看计组:指令集 看计组/caaqa:存储器层次 看计组:补之前的笔记 组合数学

5.9 汇编语言:浮点数操作指令

浮点运算单元是从80486处理器开始才被集成到CPU中的,该运算单元被称为FPU浮点运算模块,FPU不使用CPU中的通用寄存器,其有自己的一套寄存器,被称为浮点数寄存器栈,FPU将浮点数从内存中加载到寄存器栈中,完成计算后在回写到内存中。FPU有8个可独立寻址的80位寄存器,分别名为`R0-R7`他们以堆栈的形式组织在一起,栈顶由FPU状态字中的一个名为TOP的域组成,对寄存器的引用都是相对于栈顶

1.9 动态解密ShellCode反弹

动态解密执行技术可以对抗杀软的磁盘特征查杀。其原理是将程序代码段中的代码进行加密,然后将加密后的代码回写到原始位置。当程序运行时,将动态解密加密代码,并将解密后的代码回写到原始位置,从而实现内存加载。这种技术可以有效地规避杀软的特征码查杀,因为加密后的代码通常不会被标记为恶意代码。

4.1 应用层Hook挂钩原理分析

InlineHook 是一种计算机安全编程技术,其原理是在计算机程序执行期间进行拦截、修改、增强现有函数功能。它使用钩子函数(也可以称为回调函数)来截获程序执行的各种事件,并在事件发生前或后进行自定义处理,从而控制或增强程序行为。Hook技术常被用于系统加速、功能增强、等领域。本章将重点讲解Hook是如何实现的,并手动封装实现自己的Hook挂钩模板。首先我们来探索一下Hook技术是如何实现的,如下

4.2 Inline Hook 挂钩技术

InlineHook 是一种计算机安全编程技术,其原理是在计算机程序执行期间进行拦截、修改、增强现有函数功能。它使用钩子函数(也可以称为回调函数)来截获程序执行的各种事件,并在事件发生前或后进行自定义处理,从而控制或增强程序行为。Hook技术常被用于系统加速、功能增强、开发等领域。本章将重点讲解Hook是如何实现的,并手动封装实现自己的Hook挂钩模板。

chatgpt接口开发笔记1:completions接口

chatgpt接口开发笔记1:completions接口 序:写这一系列文章的动机来源于在部署Chanzhaoyu/**chatgpt-web**项目时发现,体验并不好,会存在多人同时提问时回答会夹断,上下文接不上的现象。同时希望搭建的项目能实现前后端分离。于是用webapi写了一套后端接口。我会把

Nginx反向代理服务流式输出设置

# Nginx反向代理服务流式输出设置 # 1.问题场景 提问:为什么我部署的服务没有流式响应 最近在重构原有的GPT项目时,遇到gpt回答速度很慢的现象。在使用流式输出的接口时,接口响应速度居然还是达到了30s以上。 # 2.现象分析 分析现象我发现,虽然前端还是流式打印的结果,但是,好像是接口处

初步探索GraalVM——云原生时代JVM黑科技

1 云原生时代Java语言的困境 经过多年的演进,Java语言的功能和性能都在不断的发展和提高,诸如即时编译器、垃圾回收器等系统都能体现Java语言的优秀,但是想要享受这些功能带来的提升都需要一段时间的运行来达到最佳性能,总的来说Java是面向大规模、长时间使用的服务端应用而设计的。 云原生时代,J

谈JVM参数GC线程数ParallelGCThreads合理性设置

作者:京东零售 刘乐 导读:本篇文章聚焦JVM参数GC线程数的合理配置,从ParallelGCThreads参数含义、参数设置,到参数实验以及修改意见进行解析。 1. ParallelGCThreads参数含义 在讲这个参数之前,先谈谈JVM垃圾回收(GC)算法的两个优化标的:吞吐量和停顿时长。JV

事务,不只ACID

事务是应用程序将多个读写操作组合成一个逻辑单元的一种形式,这样其中所有的读写操作都被视为单个操作来执行,要么成功提交,要么失败回滚,不存在任何部分成功和部分失败的情况。现在,几乎所有的关系型数据库和一些非关系型数据库都支持事务。

【RocketMQ】事务实现原理

RocketMQ事务的使用场景 单体架构下的事务 在单体系统的开发过程中,假如某个场景下需要对数据库的多张表进行操作,为了保证数据的一致性,一般会使用事务,将所有的操作全部提交或者在出错的时候全部回滚。以创建订单为例,假设下单后需要做两个操作: 在订单表生成订单 在积分表增加本次订单增加的积分记录