简单理解批处理和流处理的区别

【译】.NET 7 中的性能改进(十一)

原文 | Stephen Toub 翻译 | 郑子铭 同样,为了不做不必要的工作,有一个相当常见的模式出现在string.Substring和span.Slice等方法中。 span = span.Slice(offset, str.Length - offset); 这里需要注意的是,这些方法都有 ......
性能 NET

【译】.NET 7 中的性能改进(十二)

原文 | Stephen Toub 翻译 | 郑子铭 New APIs 在.NET 7中,Regex得到了几个新的方法,所有这些方法都能提高性能。新的API的简单性可能也误导了为实现它们所需的工作量,特别是由于新的API都支持ReadOnlySpan输入到regex引擎。 dotnet/runtim ......
性能 NET

【译】.NET 7 中的性能改进(十三)

原文 | Stephen Toub 翻译 | 郑子铭 代码生成 (Code generation) .NET 7的regex实现有不少于四个引擎:解释器(如果你不明确选择其他引擎,你会得到什么),编译器(你用RegexOptions.Compiled得到什么),非回溯引擎(你用RegexOption ......
性能 NET

如何让 WinDebug Preview 加载 Dotnet Core 的 SOS.dll 进行调试

一、前言 最近我在使用 WinDebug进行系统调试,也是在学习《Net高级调试》这本书。以前听过 WinDebug 调试器,但是没有使用过,由于最近想起来了,就好好的研究一下,学习一下。初次接触,还是走了不少弯路,踩了不少坑。关于 WinDebug 最新版的安装方法,可以在“微软商店”里面,直接查 ......
WinDebug Preview Dotnet Core SOS

使用Git进行版本控制,不同的项目怎么设置不同的提交用户名和邮箱呢?

1.全局设置用户名和邮箱 因为平时除了开发公司项目还会写自己的项目或者去维护开源项目,一般情况下,公司会要求提交代码时使用自己的真名或者拼音和公司邮箱,以前就只会设置全局用户名或邮箱如下 git config --global user.name "username" git config --gl ......
用户名 邮箱 版本 项目 用户

编程的艺术:不嵌套主义

编程的艺术 不嵌套主义 之前不记得是在哪里看到的这个不嵌套主义,貌似是在B站上看到的,算是我看了这么多和编程相关的meme里面对我影响最大的。 是什么? 什么是不嵌套主义?准确的说 不嵌套主义 并不是不让你缩进,而是针对代码的结构而言,要尽量少使用嵌套关系,而尽量去使用断言,或者说将其当成一个单独的 ......
主义 艺术

【大型软件开发】开发日志(五).net框架与C++的融合:CLR——C++如何调用C#的DLL

做什么? 先说一下场景,现在正在开发一个Qt ActiveServer,也就是用一个应用程序去向其他的组件暴露接口,以达到提供服务的目的。 然后新版的框架要提供大部分功能,也就是要重做大部分模块。现在有一个问题,就是有一个用于提供向web发送post请求,获得回执并解析的模块,叫LBD_WebApi ......
软件开发 框架 软件 日志 net

【译】.NET 7 中的性能改进(八)

原文 | Stephen Toub 翻译 | 郑子铭 Mono 到目前为止,我一直提到 "JIT"、"GC "和 "运行时",但实际上在.NET中存在多个运行时。我一直在谈论 "coreclr",它是推荐在Linux、macOS和Windows上使用的运行时。然而,还有 "mono",它为Blazo ......
性能 NET

【译】.NET 7 中的性能改进(九)

原文 | Stephen Toub 翻译 | 郑子铭 原始类型和数值 (Primitive Types and Numerics) 我们已经看过了代码生成和GC,线程和矢量化,互操作......让我们把注意力转向系统中的一些基本类型。像int、bool和double这样的基本类型,像Guid和Dat ......
性能 NET

ArchKeeper (开篇):架构守护平台的问题与理念

在敏捷开发环境下,系统通过迭代增量的交付价值,系统架构也是如此。团队不可能在项目之初就建立完美的系统架构,系统架构应该随着系统迭代不断演进。架构演进和架构腐化是看待架构的不同视角:架构腐化着眼于现状,架构演进侧重于未来架构腐化不可避免,随着时间流转腐化现象必然发生。而我们需要做的是:通过某种方式及早... ......
开篇 ArchKeeper 架构 理念 问题

基于 Istio 的灰度发布架构方案实践之路

灰度发布,是指能够平滑过渡的一种发布方式。尤其是对于toB业务和SAAS类平台,很多情况需要根据租户或用户维度进行灰度控制,实现业务上的A/Best功能。尽管几经迭代,但仍存在系统入侵性强、新版本接口异常等问题。因此,探索了一条基于Istio的服务流量治理方案下的灵活可配置的灰度发布方案。 ......
灰度 架构 方案 Istio

【NLP 系列】Bert 词向量的空间分布

我们知道Bert 预训练模型针对分词、ner、文本分类等下游任务取得了很好的效果,但在语义相似度任务上,表现相较于 Word2Vec、Glove 等并没有明显的提升。 ......
向量 空间 Bert NLP

.NET中委托性能的演变

.NET中的委托 .NET中的委托是一项重要功能,可以实现间接方法调用和函数式编程。 自.NET Framework 1.0起,委托在.NET中就支持多播(multicast)功能。通过多播,我们可以在单个委托调用中调用一系列方法,而无需自己维护方法列表。 即使在今天,委托的多播功能在桌面开发中仍然 ......
中委 性能 NET

总结一下搭建个人网站《曼云古籍在线识别》的完整流程

继2年前开发出一个标注工具PaddleOCRLabel之后,我就开始炼丹之旅,全面all in人工智能,历时一年,终于炼成了第一颗“丹”——针对于古籍的ocr识别模型。经过400万图片的验证,目前对四库全书版的古籍识别度较高,大约是99.8%。 以下链接是实际效果:https://www.ocr66 ......
古籍 个人网站 流程 个人 网站

数据测试实践:从一个bug开始的大数据引擎兼容性探索

数据测试不仅关注数据加工的代码逻辑,还要考虑大数据执行引擎带来的影响,因为各种引擎框架将对同一份数据产生不同的计算或检索结果。本文将从一个年度账单bug引入,讲解在数据测试实践中对大数据执行引擎兼容性 ......
数据 兼容性 引擎 bug

深入理解 Python 虚拟机:整型(int)的实现原理及源码剖析

在本篇文章当中主要给大家介绍在 cpython 内部是如何实现整型数据 int 的,主要是分析 int 类型的表示方式,分析 int 类型的巧妙设计。 ......
源码 原理 Python int

深入理解 Python 虚拟机:复数(complex)的实现原理及源码剖析

在本篇文章当中主要给大家介绍在 cpython 虚拟机当中是如何实现 复数 complex 这个数据类型的,这个数据类型在 cpython 当中一应该是一个算比较简单的数据类型了,非常容易理解。 ......
复数 源码 原理 complex Python

【MRTK】HoloLens 项目部署的几种方法

前言 如果在项目部署过程中遇到报错 Unity.IL2CPP.Building.BuilderFailedException: Lump_libil2cpp_vm.cpp,可以查看我之前的文章 【MRTK】解决 Unity.IL2CPP.Building.BuilderFailedException ......
HoloLens 方法 项目 MRTK

取出预训练模型中间层的输出(pytorch)

1 遍历子模块直接提取 对于简单的模型,可以采用直接遍历子模块的方法,取出相应name模块的输出,不对模型做任何改动。该方法的缺点在于,只能得到其子模块的输出,而对于使用nn.Sequensial()中包含很多层的模型,无法获得其指定层的输出。 示例 resnet18取出layer1的输出 from ......
中间层 模型 pytorch

SpringCloud微服务实战——搭建企业级开发框架(四十九):数据字典注解的设计与实现

数据字典是系统中基本的必不可少的功能,在多种多样的系统中,数据字典表的设计都大同小异。但是使用方式确是多种多样,设计好一套易用的数据字典功能模块,可以使开发事半功倍。 常用的数据字典使用方式: 直接在SQL语句中LEFT JOIN (当然是不推荐这样用的) 查询出原始数据,然后再根据原始数据需要的字 ......
注解 SpringCloud 字典 框架 数据

SpringCloud微服务实战——搭建企业级开发框架(五十):集成移动端推送功能的系统通知公告数据库设计

系统的通知公告功能似乎是很容易被忽略的功能模块,在传统的软件系统中,一般OA类软件系统不可或缺,而在应用软件系统中此功能或有或无,在现在大多数的互联网软件系统中,此功能又必不可缺。所以,在框架设计时,我们需要考虑业务系统是否需要此功能模块,然后将此功能作为扩展插件,在需要时开启,在不需要时配置关闭即 ......

深入理解 Python 虚拟机:列表(list)的实现原理及源码剖析

在本篇文章当中主要给大家介绍 cpython 虚拟机当中针对列表的实现,在 Python 中,List 是一种非常常用的数据类型,可以存储任何类型的数据,并且支持各种操作,如添加、删除、查找、切片等,在本篇文章当中将深入去分析这一点是如何实现的。 ......
源码 原理 Python list

深入理解 Python 虚拟机:元组(tuple)的实现原理及源码剖析

在本篇文章当中主要给大家介绍 cpython 虚拟机当中针对列表的实现,在 Python 中,tuple 是一种非常常用的数据类型,在本篇文章当中将深入去分析这一点是如何实现的。 ......
源码 原理 Python tuple

深入理解 Python 虚拟机:浮点数(float)的实现原理及源码剖析

深入理解 Python 虚拟机:浮点数(float)的实现原理及源码剖析 在本篇文章当中主要分析在 cpython 虚拟机当中 float 类型的实现原理以及与他相关的一些源代码。 Float 数据结构 在 cpython 虚拟机当中浮点数类型的数据结构定义如下所示: typedef struct ......
点数 源码 原理 Python float

理解线段树这一篇文章就够啦!

线段树 TODO: [ ] 补充例题 [ ] 线段树的进阶拓展 [ ] $Java$ 模板封装类 前言 本文中,若无特殊说明,数列下标均从 $1$ 开始 由于本人实力有限,线段树更高级的拓展暂不做考虑 引入 什么是线段树 线段树($Segment\ Tree$)是一种二叉搜索树,它将一个区间划分成一 ......
线段 篇文章

装箱算法的性能测试

笔者第一次对算法做性能测试,记录本次测试的过程,方便以后复盘。 项目的背景是新提交了一个需求,在每个b2c出库订单入库时,给订单一个合适的推荐箱型。订单的sku属性中有长宽高,包材管理的表中也有各包材的长宽高。需要推荐一个能装下的最小包材,并且体积占比低于90%,剩余大于等于10%空间留给冷媒和充气 ......
算法 性能

Nextcloud的一些错误提示

Nextcloud的一些错误提示 PHP 内存限制低于建议值 512MB 您可以通过以下步骤增加PHP内存限制: 打开php.ini文件 在终端中输入以下命令打开php.ini文件: bash sudo nano /etc/php/<version>/apache2/php.ini 请注意将“”替换 ......
Nextcloud 错误

一些有趣的VBS脚本

一些实用的VBS脚本 截取屏幕并将截图保存到剪贴板 With CreateObject("Word.Basic") .Sendkeys "{prtsc}" .FileQuit '.AppClose End With Msgbox "已将屏幕截取到剪贴板。", vbSystemModal+vbInfo ......
脚本 VBS

8.3现有计算机应用的一些分析2

分离的计算 学生在小学、中学学习数学时,数学完整的活动都是由纸笔媒介系统支持。数学知识印刷在课本上。解题时,问题陈述在纸上,算式可以列示在纸上,解题计算的过程也在纸上操作进行。在解题者的理解中,知识与算法,内容与过程也都是统一的,不存在需要额外的知识从这一部分过渡到另一部分。在工程技术实践中,所遇到 ......
计算机 8.3

给我一块画布,我可以造一个全新的跨端UI

一、源起 作者是名超大龄程序员,曾涉及了包括Web端、桌面端、移动端等各类前端技术,深受这些前端技术的苦,主要但不限于: 每种技术编写代码的语言及技术完全不同,同样呈现形式的组件各端无法通用; 大部分前端开发语言跟后端开发语言不同,不能共用一些数据结构; 前端UI的本质是在显示器上呈现由像素点组成的 ......
画布 全新