- 博客(13)
- 收藏
- 关注
原创 rust生成器的多个写法
在用 Rust 处理大模型生成的 Token 时,希望能够异步逐个接收。但是Rust 稳定版目前尚不支持生成器(generator)。本文记录几种可行的实现方案。大模型用到异步,async-stream比较成熟,所以用它。
2025-04-03 00:05:28
284
原创 rust Cow<str> 用处
在rust中了解到Cow写时复制结构体,之前一直不明白有什么用,现在举些例子理解一下在字符串上的应用&str本身不可修改、String要先分配内存、Cow允许写时再分配内存,做到尽量节省分配内存开销。
2024-10-18 17:35:31
285
原创 rust 简单写个短字符串优化
在比较c++和rust的字符串的时候就发现c++在字符串比较短的时候会分配在栈上,网上叫短字符串优化(SSO),但是rust没有这个优化,于是自己简单实现一下。
2024-07-22 21:11:34
198
原创 rust 析构 释放内存
rust中析构用Droptrait析构≠释放内存,一般析构里放释放内存操作析构函数里面没有释放内存操作时可以重复调用,释放内存不行->double free先定义2个结构体,其中MyStruct包含InnerPtrInnerPtr包含一个智能指针等待释放println!println!
2024-07-15 08:59:52
487
原创 rust 分配内存方式
先创建布局,再申请内存。偏底层,不会在栈上分配空间,但是空间过大还是会申请失败返回空指针。一般先在栈上创建对象,再移动到堆,如果是。但在new里面创建不会报错。
2024-07-12 11:03:26
272
原创 c++ vs rust 移动、所有权、生命周期
string赋值为拷贝构造,创建副本,之后能同时用s1、s2。如果硬要使用会报错,报错信息友好也是rust的优势之一。string赋值为所有权转移,s1变为不可用。
2024-06-20 11:08:52
310
原创 wsl+docker desktop找默认路径挂载文件
文件资源管理器输入,可以看到Ubuntu、docker desktop的文件在Ubuntu可以访问Windos的磁盘,但是挂载后没有文件某次不加参数运行偶然发现其自动挂载到某个地方,打算寻找不可用Windows访问,猜想可能不在Ubuntu上后来经过搜索功能找到位置经过尝试可以看到挂载文件后面发现直接也是可以找到挂载文件...
2022-07-11 14:55:24
3014
2
原创 程序员的磁盘清理
程序员的磁盘清理AnacondachocoJetBrains Toolbox自己的C盘不大但又装了很多开发工具而且OneDrive同步该盘,导致C盘经常飘红,目前总结了自己适用的一些方法Anacondaconda clean -a chocochoco install choco-cleanerchoco-cleaner.ps1JetBrains Toolbox...
2022-04-03 15:15:13
8724
原创 chocolatey安装工具
文章目录搜索包常用的包mingwFiraCodetomcat在安装terminal的时候接触到chocolatey这个Windows包管理工具,方便更新,特地记下相关配置搜索包搜索包的官网常用的包mingw能编译运行c/c++文件安装时自动配好环境变量,用vscode时安装好c++插件可直接运行单个c++文件FiraCode好看的编程字体安装后自动安装字体,后续也方便更新tomcatweb开发的服务器安装后文件分开2个地方存放,Intellij IDEA中要配置为......
2022-02-23 19:52:05
8239
原创 Kruskal算法的各种尝试
Kruskal算法的各种尝试生成树在图论的数学领域中,如果连通图 G的一个子图是一棵包含G 的所有顶点的树,则该子图称为G的生成树(SpanningTree)。生成树是连通图的包含图中的所有顶点的极小连通子图。图的生成树不惟一。从不同的顶点出发进行遍历,可以得到不同的生成树。—鲁迅常用的生成树算法DFS生成树、BFS生成树、PRIM 最小生成树和Kruskal最小生成树...
2019-06-23 07:22:05
292
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人