- 1 简介堆栈的使用场景非常多,在很多编程语言虚拟机中都有应用,这里简单介绍几个使用场景。 2 使用场景 2.1 成对匹配比如括号验证,简单括号匹配。栈也可以用于 XML,HTML的成对的关键字匹配校验。括号一般用来指定表达式的运算优先级,多层括号的层级是否正确如,((()), ())))))。规则,按栈的方式取值,第一个左括号 匹配 第一个右括号。推广到 开闭校验,如 html。我们将使用... 1 简介堆栈的使用场景非常多,在很多编程语言虚拟机中都有应用,这里简单介绍几个使用场景。 2 使用场景 2.1 成对匹配比如括号验证,简单括号匹配。栈也可以用于 XML,HTML的成对的关键字匹配校验。括号一般用来指定表达式的运算优先级,多层括号的层级是否正确如,((()), ())))))。规则,按栈的方式取值,第一个左括号 匹配 第一个右括号。推广到 开闭校验,如 html。我们将使用...
- 4 使用汇编和调试工具 dlv在中大型程序中,部分汇编和调试工作可以给我们提供便利。 4.0 汇编简介go语言自带了汇编模式cgo,用于调用其他c库和在某些场景调试程序。官方文档: golang.org/doc/asmgo汇编需要在go包中使用,必须指明当前包名等信息。汇编代码中定义的变量和函数要被其他Go语言引用,还需要通过Go语言代码将汇编定义的符号声明出来。用于变量和函数的定义的Go... 4 使用汇编和调试工具 dlv在中大型程序中,部分汇编和调试工作可以给我们提供便利。 4.0 汇编简介go语言自带了汇编模式cgo,用于调用其他c库和在某些场景调试程序。官方文档: golang.org/doc/asmgo汇编需要在go包中使用,必须指明当前包名等信息。汇编代码中定义的变量和函数要被其他Go语言引用,还需要通过Go语言代码将汇编定义的符号声明出来。用于变量和函数的定义的Go...
- 简介语言在发展和变化,编码习惯也在发生改变。这里简单聊聊 17个python中常见的编码习惯或者风格。 1,可变数据结构: 注意在函数变量不要使用它def foo(x=[]): x.append(1) print(x) >>>foo()[1]>>>foo()[1,1]>>>foo()[1,1,1]def foo(p=None): if p is None: p = ... 简介语言在发展和变化,编码习惯也在发生改变。这里简单聊聊 17个python中常见的编码习惯或者风格。 1,可变数据结构: 注意在函数变量不要使用它def foo(x=[]): x.append(1) print(x) >>>foo()[1]>>>foo()[1,1]>>>foo()[1,1,1]def foo(p=None): if p is None: p = ...
- 1 字符集和编码方案Go 语言源码默认使用unicode字符集,并采用UTF8编码方案。 Go还提供了rune原生类型表示unicode字符。在大多数语言的场景,并不需要深入了解字符集和字符编码方案。但是,在涉及不同字符集的转换或同一字符集不同编码方案之间的转换时,了解字符原理和字符编码方案就显得非常必要了。 这里介绍 Go的Unicode字符表示以及如何使用Go进行字符编码方案转换。st... 1 字符集和编码方案Go 语言源码默认使用unicode字符集,并采用UTF8编码方案。 Go还提供了rune原生类型表示unicode字符。在大多数语言的场景,并不需要深入了解字符集和字符编码方案。但是,在涉及不同字符集的转换或同一字符集不同编码方案之间的转换时,了解字符原理和字符编码方案就显得非常必要了。 这里介绍 Go的Unicode字符表示以及如何使用Go进行字符编码方案转换。st...
- 前言我们都知道,越早发现问题越早纠正,那么程序的成本将更小。每个语言都有针对自身代码的单元测试框架,这里对不同语言的内建框架产品简单做些对比介绍,友善提醒,本文较长。 1 go 的内建框架 1.1 调试并发程序go是 多线程的, 也就是基于消息传递的并发。多线程和基于消息的并发编程是等价的。 多线程并发模型可以容易对应到多核处理器,主流操作系统也提供了系统级的多线程支持。go 语言是基于消... 前言我们都知道,越早发现问题越早纠正,那么程序的成本将更小。每个语言都有针对自身代码的单元测试框架,这里对不同语言的内建框架产品简单做些对比介绍,友善提醒,本文较长。 1 go 的内建框架 1.1 调试并发程序go是 多线程的, 也就是基于消息传递的并发。多线程和基于消息的并发编程是等价的。 多线程并发模型可以容易对应到多核处理器,主流操作系统也提供了系统级的多线程支持。go 语言是基于消...
- 1 mypy 类型检查Mypy 是 Python 的可选静态类型检查器,旨在结合动态(或“鸭子”)类型和静态类型的优点。它 将 Python 的表达能力和便利性与强大的类型系统和编译时类型检查相结合。Mypy 类型检查标准 Python 程序;使用任何 Python VM 运行它们,基本上没有运行时开销。python的类型系统:将现有代码迁移到静态类型,一次一个函数。您可以在程序、模块或表... 1 mypy 类型检查Mypy 是 Python 的可选静态类型检查器,旨在结合动态(或“鸭子”)类型和静态类型的优点。它 将 Python 的表达能力和便利性与强大的类型系统和编译时类型检查相结合。Mypy 类型检查标准 Python 程序;使用任何 Python VM 运行它们,基本上没有运行时开销。python的类型系统:将现有代码迁移到静态类型,一次一个函数。您可以在程序、模块或表...
- 文章详细介绍了 Python logging 模块中的日志异步操作,包括多线程、多进程和异步IO三种主要方法,并提供对应代码和对应使用场景。 文章详细介绍了 Python logging 模块中的日志异步操作,包括多线程、多进程和异步IO三种主要方法,并提供对应代码和对应使用场景。
- 单一责任一个简单的通知系统有哪些部分?我会说三个。客户端和服务器之间的通信;可以是 WebSocket、HTTP 或 gRPC。存储;将通知存储在某个地方,以便我们可以在用户上网时访问它们。The s信号;允许客户端实时接收通知。这些是一些必不可少的部分,您可以以某种方式设计您的软件。但是,我们将在本文中遵循此设计。这些部分中的每一个都应该是一个单独的包,因为它们在系统中具有不同的职责。尽管... 单一责任一个简单的通知系统有哪些部分?我会说三个。客户端和服务器之间的通信;可以是 WebSocket、HTTP 或 gRPC。存储;将通知存储在某个地方,以便我们可以在用户上网时访问它们。The s信号;允许客户端实时接收通知。这些是一些必不可少的部分,您可以以某种方式设计您的软件。但是,我们将在本文中遵循此设计。这些部分中的每一个都应该是一个单独的包,因为它们在系统中具有不同的职责。尽管...
- 一、历史背景1.1 作业监控的历史熟悉GaussDB(DWS)的同学可能知道,DWS中作业监控呈现一种“百花齐放,百家争鸣”的态势。涉及作业监控的视图繁多,且各自为政。导致用户掌握难度大,给业务应用和问题定位带来很大困难。涉及作业监控的常见视图包括但不限于(此处仅列举实时监控):序号视图名称备注1pg_stat_activity显示当前CN上当前用户的会话相关信息,包含idle会话2pgxc... 一、历史背景1.1 作业监控的历史熟悉GaussDB(DWS)的同学可能知道,DWS中作业监控呈现一种“百花齐放,百家争鸣”的态势。涉及作业监控的视图繁多,且各自为政。导致用户掌握难度大,给业务应用和问题定位带来很大困难。涉及作业监控的常见视图包括但不限于(此处仅列举实时监控):序号视图名称备注1pg_stat_activity显示当前CN上当前用户的会话相关信息,包含idle会话2pgxc...
- 简介处理流式任务是现代互联网的重要任务,比如队列,比如internet的视频流数据。 这里简单讨论如何处理这些任务,有哪些工具可用。 1 队列处理在本文档中 “协程” 可用来表示两个紧密关联的概念:协程函数: 定义形式为 async def 的函数;协程对象: 调用 协程函数 所返回的对象。asyncio 也支持旧式的 基于生成器的 协程。 1.1 首先看一个:线程添加和取出from qu... 简介处理流式任务是现代互联网的重要任务,比如队列,比如internet的视频流数据。 这里简单讨论如何处理这些任务,有哪些工具可用。 1 队列处理在本文档中 “协程” 可用来表示两个紧密关联的概念:协程函数: 定义形式为 async def 的函数;协程对象: 调用 协程函数 所返回的对象。asyncio 也支持旧式的 基于生成器的 协程。 1.1 首先看一个:线程添加和取出from qu...
- 在研发的过程中,很多企业都会针对自身业务特点来定制研发一些工具类库,但是这些工具类库又不会对外公开,那如何在组织内部共享这些类库呢?一种很好的方式就是在公司内部搭建一套Maven私服仓库。 在研发的过程中,很多企业都会针对自身业务特点来定制研发一些工具类库,但是这些工具类库又不会对外公开,那如何在组织内部共享这些类库呢?一种很好的方式就是在公司内部搭建一套Maven私服仓库。
- 本文介绍了MongoDB复制集的架构和特点,强调了使用复制集提供数据的高可用性和冗余性的重要性。复制集由Primary节点和Secondary节点组成,确保数据一致性。复制集还具有数据分发、读写分离和异地容灾等附加功能。使用MongoDB复制集可以提供稳定可靠的数据存储和高可用性。 本文介绍了MongoDB复制集的架构和特点,强调了使用复制集提供数据的高可用性和冗余性的重要性。复制集由Primary节点和Secondary节点组成,确保数据一致性。复制集还具有数据分发、读写分离和异地容灾等附加功能。使用MongoDB复制集可以提供稳定可靠的数据存储和高可用性。
- #剑指Offer——知识点储备–##1.linux下查看进程占用cpu的情况(top);格式top [-] [d delay] [q] [c] [S] [s] [i] [n]主要参数d:指定更新的间隔,以秒计算。q:没有任何延迟的更新。如果使用者有超级用户,则top命令将会以最高的优先序执行。S:累积模式,会将己完成或消失的子行程的CPU时间累积起来。s:安全模式。n:显示更新的次数,完成后... #剑指Offer——知识点储备–##1.linux下查看进程占用cpu的情况(top);格式top [-] [d delay] [q] [c] [S] [s] [i] [n]主要参数d:指定更新的间隔,以秒计算。q:没有任何延迟的更新。如果使用者有超级用户,则top命令将会以最高的优先序执行。S:累积模式,会将己完成或消失的子行程的CPU时间累积起来。s:安全模式。n:显示更新的次数,完成后...
- 本文讨论了零拷贝在优化数据传输效率方面的局限性。尽管零拷贝技术在减少数据传输过程中的内存拷贝次数方面有很大的优势,但它并非适用于所有情况。文章介绍了一些其他的优化方法,如异步I/O和直接I/O的组合、根据文件大小选择不同的优化方式。至此,我们的计算机基础专栏就结束了,不知道大家有没有发现,操作系统底层提供了丰富的解决方案来支持应用程序的复杂性和可扩展性。对于任何工作中遇到的问题,我们都可以从操作系 本文讨论了零拷贝在优化数据传输效率方面的局限性。尽管零拷贝技术在减少数据传输过程中的内存拷贝次数方面有很大的优势,但它并非适用于所有情况。文章介绍了一些其他的优化方法,如异步I/O和直接I/O的组合、根据文件大小选择不同的优化方式。至此,我们的计算机基础专栏就结束了,不知道大家有没有发现,操作系统底层提供了丰富的解决方案来支持应用程序的复杂性和可扩展性。对于任何工作中遇到的问题,我们都可以从操作系
- 在计算机安全领域,进程间通信(IPC)一直是一个备受关注的话题。在本文中,我们将探讨如何使用Windows邮件槽(Mailslot)实现ShellCode的跨进程传输。邮件槽提供了一种简单而有效的单向通信机制,使得任何进程都能够成为邮件槽服务器,并通过UDP通信向其他进程发送数据。邮件槽是Windows操作系统提供的一种用于本地进程间通信的机制。它允许一个进程创建一个命名的槽,并允许其他进程... 在计算机安全领域,进程间通信(IPC)一直是一个备受关注的话题。在本文中,我们将探讨如何使用Windows邮件槽(Mailslot)实现ShellCode的跨进程传输。邮件槽提供了一种简单而有效的单向通信机制,使得任何进程都能够成为邮件槽服务器,并通过UDP通信向其他进程发送数据。邮件槽是Windows操作系统提供的一种用于本地进程间通信的机制。它允许一个进程创建一个命名的槽,并允许其他进程...
上滑加载中
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
回顾中 -
关于RISC-V生态发展的思考2025/09/02 周二 17:00-18:00
中国科学院计算技术研究所副所长包云岗教授
中科院包云岗老师将在本次直播中,探讨处理器生态的关键要素及其联系,分享过去几年推动RISC-V生态建设实践过程中的经验与教训。
回顾中 -
一键搞定华为云万级资源,3步轻松管理企业成本2025/09/09 周二 15:00-16:00
阿言 华为云交易产品经理
本直播重点介绍如何一键续费万级资源,3步轻松管理成本,帮助提升日常管理效率!
回顾中
热门标签