- 博客(33)
- 收藏
- 关注
原创 从零实现富文本编辑器#-React可编辑节点的组件预设
其底层数据存储在对象存储中(S3、COS、OSS、ceph),在用户和对象存储层中加一个中间层,作为文件系统层,负责将文件系统与对象存储的操作进行翻译转换,从而实现POSIX兼容。在介绍之前,首先需要理清楚文件系统与对象存储的区别是什么,文件系统对接对象存储需要做哪些工作,之后才考虑性能的优化与可靠性的优化。对象存储的 FUSE 并不是完美的。操作接口:基于RESTful API(),主要操作是PUT(上传/覆盖),GET(下载),DELETE(删除),HEAD(获取元数据),不支持seek或部分写入。
2026-05-08 20:17:12
168
原创 LeetCode 删除无效的括号:python 题解
实际行为:服务器发完剩余数据后,内核构造FIN+ACK报文(FIN=1表示关闭自身数据流,ACK=1确认之前的交互),序号seq=w(w是服务器最后一次发数据的序号+1),确认号ack=u+1(与第二步的ack一致,因为客户端此时已无数据发送),发送给客户端。停止发送新数据,将未发完的数据一次性发完,然后构造FIN+ACK报文(FIN=1表示关闭自身数据流,ACK=1确认之前收到的服务器数据),序号seq=u(u是客户端最后一次发数据的序号+1),确认号ack=v(v是服务器最后一次发数据的序号+1);
2026-05-08 20:13:53
147
原创 营销自动化数据驱动 - 多源数据 OLAP 架构演进
她通读了 CNCF Landscape 的各类技术文章,然后大显身手,引入 Istio 做 Service Mesh,用 Argo 做发布,在 Vault 管理 Secrets,部署 Prometheus + Thanos 做可观测性,还有 cert-manager 处理 TLS,external-dns 管理域名,Velero 搞定备份。是真正的实战培训,而不是丢下一句看文档。我想进一步补充的是,真正致命的问题不在复杂性本身,而在于那些未被文档化的复杂性,也就是只存在于 Maya 脑子里的隐秘经验。
2026-05-08 20:09:17
343
原创 DotNetPy:现代.NET 与 Python 互操作 实战指南
而你的主要代码逻辑则被移动到状态机的MoveNext()方法中,通过状态值和switch语句实现执行点的跳转。下次使用async/await时,请记住:你正在利用C#编译器的强大魔法,将看似简单的顺序代码转换为高效的状态机实现。特别重要的是:如果异步方法同步完成(所有等待的操作已经完成),状态机将保留在栈上,不会发生堆分配。该构造会追踪代码中的各种操作和状态,比如当代码达到等待表达式时放弃执行,以及在后台作业完成时恢复执行。// 状态:-1=开始,0=等待中,-2=完成。
2026-05-08 20:04:41
222
原创 Redis持久化:从AOF到RDB,如何实现数据不丢失?
在实际使用中该控件主要用于整型或浮点的计数显示,与普通的LineEdit组件不同,该组件可以在前后增加特殊符号并提供了上下幅度的调整按钮,灵活性更强。接下来将用一个简单的案例展示如何使用 QSpinBox组件,该组件有两个版本:QSpinBox用于展示单精度浮点数,而QDoubleSpinBox() 则可以展示精度更高的数值,需要注意的是,该组件有两个特殊参数,当使用setPrefix() 时可以指定在前方加入特殊符号,而使用 setSuffix() 时则可以在后方追加特殊符号,我们就可以后方追加为例。
2026-05-08 20:00:05
168
原创 DotNetPy:现代.NET 与 Python 互操作 实战指南
而你的主要代码逻辑则被移动到状态机的MoveNext()方法中,通过状态值和switch语句实现执行点的跳转。下次使用async/await时,请记住:你正在利用C#编译器的强大魔法,将看似简单的顺序代码转换为高效的状态机实现。特别重要的是:如果异步方法同步完成(所有等待的操作已经完成),状态机将保留在栈上,不会发生堆分配。该构造会追踪代码中的各种操作和状态,比如当代码达到等待表达式时放弃执行,以及在后台作业完成时恢复执行。// 状态:-1=开始,0=等待中,-2=完成。
2026-05-07 17:20:44
209
原创 Redis持久化:从AOF到RDB,如何实现数据不丢失?
在实际使用中该控件主要用于整型或浮点的计数显示,与普通的LineEdit组件不同,该组件可以在前后增加特殊符号并提供了上下幅度的调整按钮,灵活性更强。接下来将用一个简单的案例展示如何使用 QSpinBox组件,该组件有两个版本:QSpinBox用于展示单精度浮点数,而QDoubleSpinBox() 则可以展示精度更高的数值,需要注意的是,该组件有两个特殊参数,当使用setPrefix() 时可以指定在前方加入特殊符号,而使用 setSuffix() 时则可以在后方追加特殊符号,我们就可以后方追加为例。
2026-05-07 17:15:49
212
原创 DotNetPy:现代.NET 与 Python 互操作 实战指南
而你的主要代码逻辑则被移动到状态机的MoveNext()方法中,通过状态值和switch语句实现执行点的跳转。下次使用async/await时,请记住:你正在利用C#编译器的强大魔法,将看似简单的顺序代码转换为高效的状态机实现。特别重要的是:如果异步方法同步完成(所有等待的操作已经完成),状态机将保留在栈上,不会发生堆分配。该构造会追踪代码中的各种操作和状态,比如当代码达到等待表达式时放弃执行,以及在后台作业完成时恢复执行。// 状态:-1=开始,0=等待中,-2=完成。
2026-05-06 22:08:09
181
原创 Redis持久化:从AOF到RDB,如何实现数据不丢失?
在实际使用中该控件主要用于整型或浮点的计数显示,与普通的LineEdit组件不同,该组件可以在前后增加特殊符号并提供了上下幅度的调整按钮,灵活性更强。接下来将用一个简单的案例展示如何使用 QSpinBox组件,该组件有两个版本:QSpinBox用于展示单精度浮点数,而QDoubleSpinBox() 则可以展示精度更高的数值,需要注意的是,该组件有两个特殊参数,当使用setPrefix() 时可以指定在前方加入特殊符号,而使用 setSuffix() 时则可以在后方追加特殊符号,我们就可以后方追加为例。
2026-05-06 21:58:34
175
原创 DotNetPy:现代.NET 与 Python 互操作 实战指南
而你的主要代码逻辑则被移动到状态机的MoveNext()方法中,通过状态值和switch语句实现执行点的跳转。下次使用async/await时,请记住:你正在利用C#编译器的强大魔法,将看似简单的顺序代码转换为高效的状态机实现。特别重要的是:如果异步方法同步完成(所有等待的操作已经完成),状态机将保留在栈上,不会发生堆分配。该构造会追踪代码中的各种操作和状态,比如当代码达到等待表达式时放弃执行,以及在后台作业完成时恢复执行。// 状态:-1=开始,0=等待中,-2=完成。
2026-05-05 19:10:46
198
原创 Redis持久化:从AOF到RDB,如何实现数据不丢失?
在实际使用中该控件主要用于整型或浮点的计数显示,与普通的LineEdit组件不同,该组件可以在前后增加特殊符号并提供了上下幅度的调整按钮,灵活性更强。接下来将用一个简单的案例展示如何使用 QSpinBox组件,该组件有两个版本:QSpinBox用于展示单精度浮点数,而QDoubleSpinBox() 则可以展示精度更高的数值,需要注意的是,该组件有两个特殊参数,当使用setPrefix() 时可以指定在前方加入特殊符号,而使用 setSuffix() 时则可以在后方追加特殊符号,我们就可以后方追加为例。
2026-05-05 19:03:59
187
原创 DotNetPy:现代.NET 与 Python 互操作 实战指南
而你的主要代码逻辑则被移动到状态机的MoveNext()方法中,通过状态值和switch语句实现执行点的跳转。下次使用async/await时,请记住:你正在利用C#编译器的强大魔法,将看似简单的顺序代码转换为高效的状态机实现。特别重要的是:如果异步方法同步完成(所有等待的操作已经完成),状态机将保留在栈上,不会发生堆分配。该构造会追踪代码中的各种操作和状态,比如当代码达到等待表达式时放弃执行,以及在后台作业完成时恢复执行。// 状态:-1=开始,0=等待中,-2=完成。
2026-05-04 18:50:29
155
原创 Redis持久化:从AOF到RDB,如何实现数据不丢失?
在实际使用中该控件主要用于整型或浮点的计数显示,与普通的LineEdit组件不同,该组件可以在前后增加特殊符号并提供了上下幅度的调整按钮,灵活性更强。接下来将用一个简单的案例展示如何使用 QSpinBox组件,该组件有两个版本:QSpinBox用于展示单精度浮点数,而QDoubleSpinBox() 则可以展示精度更高的数值,需要注意的是,该组件有两个特殊参数,当使用setPrefix() 时可以指定在前方加入特殊符号,而使用 setSuffix() 时则可以在后方追加特殊符号,我们就可以后方追加为例。
2026-05-04 18:43:43
208
原创 DotNetPy:现代.NET 与 Python 互操作 实战指南
而你的主要代码逻辑则被移动到状态机的MoveNext()方法中,通过状态值和switch语句实现执行点的跳转。下次使用async/await时,请记住:你正在利用C#编译器的强大魔法,将看似简单的顺序代码转换为高效的状态机实现。特别重要的是:如果异步方法同步完成(所有等待的操作已经完成),状态机将保留在栈上,不会发生堆分配。该构造会追踪代码中的各种操作和状态,比如当代码达到等待表达式时放弃执行,以及在后台作业完成时恢复执行。// 状态:-1=开始,0=等待中,-2=完成。
2026-05-03 20:53:37
377
原创 Redis持久化:从AOF到RDB,如何实现数据不丢失?
在实际使用中该控件主要用于整型或浮点的计数显示,与普通的LineEdit组件不同,该组件可以在前后增加特殊符号并提供了上下幅度的调整按钮,灵活性更强。接下来将用一个简单的案例展示如何使用 QSpinBox组件,该组件有两个版本:QSpinBox用于展示单精度浮点数,而QDoubleSpinBox() 则可以展示精度更高的数值,需要注意的是,该组件有两个特殊参数,当使用setPrefix() 时可以指定在前方加入特殊符号,而使用 setSuffix() 时则可以在后方追加特殊符号,我们就可以后方追加为例。
2026-05-03 20:48:02
334
原创 DotNetPy:现代.NET 与 Python 互操作 实战指南
而你的主要代码逻辑则被移动到状态机的MoveNext()方法中,通过状态值和switch语句实现执行点的跳转。下次使用async/await时,请记住:你正在利用C#编译器的强大魔法,将看似简单的顺序代码转换为高效的状态机实现。特别重要的是:如果异步方法同步完成(所有等待的操作已经完成),状态机将保留在栈上,不会发生堆分配。该构造会追踪代码中的各种操作和状态,比如当代码达到等待表达式时放弃执行,以及在后台作业完成时恢复执行。// 状态:-1=开始,0=等待中,-2=完成。
2026-05-02 18:59:58
366
原创 Redis持久化:从AOF到RDB,如何实现数据不丢失?
在实际使用中该控件主要用于整型或浮点的计数显示,与普通的LineEdit组件不同,该组件可以在前后增加特殊符号并提供了上下幅度的调整按钮,灵活性更强。接下来将用一个简单的案例展示如何使用 QSpinBox组件,该组件有两个版本:QSpinBox用于展示单精度浮点数,而QDoubleSpinBox() 则可以展示精度更高的数值,需要注意的是,该组件有两个特殊参数,当使用setPrefix() 时可以指定在前方加入特殊符号,而使用 setSuffix() 时则可以在后方追加特殊符号,我们就可以后方追加为例。
2026-05-02 18:52:12
300
原创 DotNetPy:现代.NET 与 Python 互操作 实战指南
而你的主要代码逻辑则被移动到状态机的MoveNext()方法中,通过状态值和switch语句实现执行点的跳转。下次使用async/await时,请记住:你正在利用C#编译器的强大魔法,将看似简单的顺序代码转换为高效的状态机实现。特别重要的是:如果异步方法同步完成(所有等待的操作已经完成),状态机将保留在栈上,不会发生堆分配。该构造会追踪代码中的各种操作和状态,比如当代码达到等待表达式时放弃执行,以及在后台作业完成时恢复执行。// 状态:-1=开始,0=等待中,-2=完成。
2026-05-01 18:55:06
340
原创 Redis持久化:从AOF到RDB,如何实现数据不丢失?
在实际使用中该控件主要用于整型或浮点的计数显示,与普通的LineEdit组件不同,该组件可以在前后增加特殊符号并提供了上下幅度的调整按钮,灵活性更强。接下来将用一个简单的案例展示如何使用 QSpinBox组件,该组件有两个版本:QSpinBox用于展示单精度浮点数,而QDoubleSpinBox() 则可以展示精度更高的数值,需要注意的是,该组件有两个特殊参数,当使用setPrefix() 时可以指定在前方加入特殊符号,而使用 setSuffix() 时则可以在后方追加特殊符号,我们就可以后方追加为例。
2026-05-01 18:48:17
314
原创 wheel - Python 打包的轮子,高效分发利器
wheel是一个用于 Python 分发包的标准格式和工具的 Python 库。创建.whl文件,这是一种即装即用的分发格式。实现更快速、更可靠的包安装。避免在安装过程中进行源代码编译,从而简化依赖管理。确保不同系统间的二进制兼容性(在某些情况下)。
2026-04-30 19:11:24
156
原创 Redis持久化:从AOF到RDB,如何实现数据不丢失?
在实际使用中该控件主要用于整型或浮点的计数显示,与普通的LineEdit组件不同,该组件可以在前后增加特殊符号并提供了上下幅度的调整按钮,灵活性更强。接下来将用一个简单的案例展示如何使用 QSpinBox组件,该组件有两个版本:QSpinBox用于展示单精度浮点数,而QDoubleSpinBox() 则可以展示精度更高的数值,需要注意的是,该组件有两个特殊参数,当使用setPrefix() 时可以指定在前方加入特殊符号,而使用 setSuffix() 时则可以在后方追加特殊符号,我们就可以后方追加为例。
2026-04-30 19:03:25
383
原创 DotNetPy:现代.NET 与 Python 互操作 实战指南
而你的主要代码逻辑则被移动到状态机的MoveNext()方法中,通过状态值和switch语句实现执行点的跳转。下次使用async/await时,请记住:你正在利用C#编译器的强大魔法,将看似简单的顺序代码转换为高效的状态机实现。特别重要的是:如果异步方法同步完成(所有等待的操作已经完成),状态机将保留在栈上,不会发生堆分配。该构造会追踪代码中的各种操作和状态,比如当代码达到等待表达式时放弃执行,以及在后台作业完成时恢复执行。// 状态:-1=开始,0=等待中,-2=完成。
2026-04-29 18:47:19
307
原创 Redis持久化:从AOF到RDB,如何实现数据不丢失?
在实际使用中该控件主要用于整型或浮点的计数显示,与普通的LineEdit组件不同,该组件可以在前后增加特殊符号并提供了上下幅度的调整按钮,灵活性更强。接下来将用一个简单的案例展示如何使用 QSpinBox组件,该组件有两个版本:QSpinBox用于展示单精度浮点数,而QDoubleSpinBox() 则可以展示精度更高的数值,需要注意的是,该组件有两个特殊参数,当使用setPrefix() 时可以指定在前方加入特殊符号,而使用 setSuffix() 时则可以在后方追加特殊符号,我们就可以后方追加为例。
2026-04-29 18:39:39
306
原创 DotNetPy:现代.NET 与 Python 互操作 实战指南
而你的主要代码逻辑则被移动到状态机的MoveNext()方法中,通过状态值和switch语句实现执行点的跳转。下次使用async/await时,请记住:你正在利用C#编译器的强大魔法,将看似简单的顺序代码转换为高效的状态机实现。特别重要的是:如果异步方法同步完成(所有等待的操作已经完成),状态机将保留在栈上,不会发生堆分配。该构造会追踪代码中的各种操作和状态,比如当代码达到等待表达式时放弃执行,以及在后台作业完成时恢复执行。// 状态:-1=开始,0=等待中,-2=完成。
2026-04-28 17:53:06
202
原创 Redis持久化:从AOF到RDB,如何实现数据不丢失?
在实际使用中该控件主要用于整型或浮点的计数显示,与普通的LineEdit组件不同,该组件可以在前后增加特殊符号并提供了上下幅度的调整按钮,灵活性更强。接下来将用一个简单的案例展示如何使用 QSpinBox组件,该组件有两个版本:QSpinBox用于展示单精度浮点数,而QDoubleSpinBox() 则可以展示精度更高的数值,需要注意的是,该组件有两个特殊参数,当使用setPrefix() 时可以指定在前方加入特殊符号,而使用 setSuffix() 时则可以在后方追加特殊符号,我们就可以后方追加为例。
2026-04-28 17:42:18
308
原创 【GUI-Agent】阶跃星辰 GUI-MCP 解读---()---GUI-MCP 整体架构
参数TParam是泛型,这样可以直接使用DTO参数来查询,减少类型转化的开销。返回值TAccount也是泛型,这样就可以直接返回视图模型或者领域模型。In的参数名是可选和前面例子的Equal是一样的,默认字段名。参数和返回值类型还可以定义为泛型,可以做到更加灵活毓辉崭够。参数直接使用Id(类型由Account简化为long)只有1个参数时支持化繁为简,支持直接传值做为参数值。只有In一个集合参数时支持直接传数组、集合或字典。单个参数无需封装,直接使用参数类型即可。这样可以节约定义只有一个属性的参数类。
2026-04-27 16:44:28
353
原创 前端使用AI试水报告
未来几周,市场将向第三方开发者开放,届时开发者可以在 nativephp.com 上架自己的插件,甚至可以销售自己开发的插件。只需运行 native:jump Artisan 命令,打开手机上的 Jump 应用扫描二维码,Laravel 应用就会直接加载到设备上,连接到本地开发服务器。Jump 是一个安装在手机上的应用(支持 Android 和 iOS),可以在真机上测试 NativePHP 应用,无需编译任何东西,也不需要开启开发者模式。此前版本中集成在核心包里的原生功能,现在被拆分成独立的插件。
2026-04-27 16:28:01
195
原创 【GUI-Agent】阶跃星辰 GUI-MCP 解读---()---GUI-MCP 整体架构
参数TParam是泛型,这样可以直接使用DTO参数来查询,减少类型转化的开销。返回值TAccount也是泛型,这样就可以直接返回视图模型或者领域模型。In的参数名是可选和前面例子的Equal是一样的,默认字段名。参数和返回值类型还可以定义为泛型,可以做到更加灵活捉盼善胀。参数直接使用Id(类型由Account简化为long)只有1个参数时支持化繁为简,支持直接传值做为参数值。只有In一个集合参数时支持直接传数组、集合或字典。单个参数无需封装,直接使用参数类型即可。这样可以节约定义只有一个属性的参数类。
2026-04-26 16:47:49
353
原创 前端使用AI试水报告
未来几周,市场将向第三方开发者开放,届时开发者可以在 nativephp.com 上架自己的插件,甚至可以销售自己开发的插件。只需运行 native:jump Artisan 命令,打开手机上的 Jump 应用扫描二维码,Laravel 应用就会直接加载到设备上,连接到本地开发服务器。Jump 是一个安装在手机上的应用(支持 Android 和 iOS),可以在真机上测试 NativePHP 应用,无需编译任何东西,也不需要开启开发者模式。此前版本中集成在核心包里的原生功能,现在被拆分成独立的插件。
2026-04-26 16:31:41
172
原创 【GUI-Agent】阶跃星辰 GUI-MCP 解读---()---GUI-MCP 整体架构
本文介绍的关键优化技巧包括:基于测量的针对性优化、内存管理最佳实践、高效的异步编程模式、合理的数据结构选择、数据库访问优化以及生产环境监控等。值得注意的是,性能优化应当遵循"先测量后优化"的原则,避免过早和过度的优化。同时,在追求性能提升的过程中,不应牺牲代码的可维护性和可读性。通过平衡各种因素,开发者可以构建出既高效又健壮的 .NET 应用程序,为用户提供流畅的使用体验,为企业创造更大的价值。最终,持续学习最新的 .NET 性能优化技术,结合实际应用场景进行实践和验证,是保持应用竞争力的关键。
2026-04-25 18:01:01
336
原创 前端使用AI试水报告
未来几周,市场将向第三方开发者开放,届时开发者可以在 nativephp.com 上架自己的插件,甚至可以销售自己开发的插件。只需运行 native:jump Artisan 命令,打开手机上的 Jump 应用扫描二维码,Laravel 应用就会直接加载到设备上,连接到本地开发服务器。Jump 是一个安装在手机上的应用(支持 Android 和 iOS),可以在真机上测试 NativePHP 应用,无需编译任何东西,也不需要开启开发者模式。此前版本中集成在核心包里的原生功能,现在被拆分成独立的插件。
2026-04-25 17:47:00
163
原创 Nginx 学习总结
{"count":1,"elapsed":209,"elapsedAvg":209,"startAt":"2025-07-17 13:33:55.116","stopAt":"2025-07-17 13:33:55.325","success"镀刎氨木。由于 Calico 官方文档中也有注明,first-found 模式为:使用第一个接口(不包括 Docker 网桥等本地接口)上的第一个有效 IP 地址,建议根据不同需求选择不同配置方式,本文采用的指定接口方式。## 默认使用此配置。## 等待很久后报错。
2026-04-22 19:02:09
325
原创 基于File-Based App开发MVP项目
Apache SeaTunnel PMC Member 对这个提议提出一些疑问,比如这种集成属于哪一层级,对多引擎兼容性的考量,类型转换的准确性等,并根据社区设计规范,要求发起者提交一份正式的设计文档(Design Document)。目前,Apache SeaTunnel 中的许多非关系型连接器(如 Elasticsearch、向量数据库和数据湖引擎)要求用户在作业配置中显式定义完整的列 Schema。先来看看提交这个 Issue 的作者是为什么想到这个点子的,以及他初步的核心设计概念。
2026-04-22 18:53:59
242
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅