nebkad

nebkad

请阻止我发帖
V2EX 第 557390 号会员,加入于 2021-09-30 23:34:06 +08:00
今日活跃度排名 20681
根据 nebkad 的设置,主题列表只有在你登录之后才可查看
二手交易 相关的信息,包括已关闭的交易,不会被隐藏
nebkad 最近回复了
10 天前
回复了 youngPacce 创建的主题 Rust rust 关于.await 的疑惑
你的疑惑不在于 await ,而是你还没理解 协程( coroutine) 和 线程 (thread) 的运行方式。
协程是对线程的分时复用,线程是操作系统提供的对 CPU 的分时复用。
Rust 的 await 是一种协程相关的关键字,你的理解是线程的工作方式。
24 天前
回复了 proxyai 创建的主题 Rust 再见 Golang, 你好 Rust
@qianjian #17

如果不考虑开发成本、维护成本、沟通成本的话,确实是什么都能写啊。
哪个领域可以用 C++ 几乎都可以用 Rust ,没人提起,是因为 Rust (的名声)积累还不够深。
25 天前
回复了 proxyai 创建的主题 Rust 再见 Golang, 你好 Rust
欢迎新的 Rustacean~!

Rust 是否能够有效减少锁使用,对这个问题有怀疑的程序员朋友们,可以尝试挑战一下实现这个。
在假定使用者不能使用 unsafe 或者别的魔法的情况下,设计一个既可用于多线程,又可以用于单线程的支持异步操作的 ring buffer ,其隐含的约束或者需求是:只允许有一个写入端和一个读取端
我用 C# golang C++ Rust 都试过。
结论就是 Rust 确实不需要额外加锁,仅仅依靠类型系统在编译时就能保证使用者一定满足上述约束。
其他语言只能通过额外对 ring buffer 加锁保证,或者只能靠文档保证。
44 天前
回复了 OliverDD 创建的主题 程序员 对数据库感兴趣,但完全接受不了 cpp
Rust 神教教徒来传教了,不喜请忽略。

我跟你一样,对数据库的查询引擎和存储结合的部分很感兴趣,也觉得 CPP 的心智负担真的太大了,没办法让我在快速试验想法的同时,能够积累一些代码用于下一次的迭代。

如果只是要快速迭代,那可能用脚本语言或者别的灵活性很高的语言是可以的,但问题是这些语言虽然表现力强但是性能真的很成问题,很难用于积累。

所以 Rust 真的很适合,它的类型系统能够帮助你以很正交的方式来描述抽象设计,零成本抽象的设计原则提供了良好的运行时性能。

作为一个曾经的 CPP 程序员,我认为 Rust 真的不需要知道什么奇技淫巧或者 corner case 就能用得很好;当然这对于很多人来说,可能 Rust 的门槛真的很高,因为他们不一定需要这么强力的工具。但以你的目标来看( DBMS 核心组件),Rust 应该是恰当的。
51 天前
回复了 hfl1995 创建的主题 Tesla 关于“单踏板模式”
@yannxia #198
我反正无所谓我是不是愚昧,我又不是无所不知。
但是你说我站在他们的对立面,那你肯定又是愚昧了。
反对“单踏板模式”的人里面,会持有什么观点我非常清楚并且很理解。
倒是你有没有问过他们,有没有开过可调节动能回收、定速巡航或者全速自适应巡航,
如果他们知道这些的话,电车不可以松开踏板放在刹车踏板上备刹吗?这时候和油车有任何区别吗?
愚昧就是愚昧,不会因为有自己的理由就不是愚昧
51 天前
回复了 hfl1995 创建的主题 Tesla 关于“单踏板模式”
看完所有回复,OP 有没有觉得人类的愚昧真的很顽固?哈哈哈哈~

就是有那么一部分人,既不能从文字描述中感知叙述者的感受,也不愿意亲自去感受,
然后坚持以自己的想象否定叙述者的体验。

所以我一直认为,一线销售人员应该是一种技术工种。
@bli22ard #6
标准库里为所有 T &T &mut T [自] [动] [地] 实现了 Borrow 和 BorrowMut 。
你不妨试试“自动地”实现一个 trait 在某个 feature 没有 stable 之前是不是允许的。

AsRef 和 AsMut 可没有这个待遇。
并且,其实 AsRef 和 AsMut 更符合设计用途的用法是类似于 OO 里面的子类隐式向父类引用转换。
而 Borrow 和 BorrowMut 在理解了 “有所有权” 和 “有使用权” 的细微差异后就会发现真的很有用
@bli22ard #4 你会这么想是不是因为你没有注意到 这段代码
https://doc.rust-lang.org/src/core/borrow.rs.html#208-241

不可能有别的代码能替代这段标准库里的效果
譬如说,我要实现一个 RingBuffer ,可以 RingBuffer 自己分配 buffer 的内存,也可以接受外部输入的 buffer 。
我们可以发现,无论自己分配还是外部输入,RingBuffer 的大部分功能代码都是一样的,不太可能为此写两种不同的 RingBuffer 。那么,RingBuffer 就可以这么定义:

```Rust
pub struct RingBuffer<B: BorrowMut<[u8]>>(B);
```
93 天前
回复了 sevenfeet 创建的主题 生活 老婆坚持想生孩子,烦
如果你对没有小孩的生活有美好的期待,觉得那是一种持久的自由甚至是幸福,那我只能说你还很嫩。
养育小孩是另一种创业,不知道这个角度对你来说会不会有点启发。
确实有很多人不适合养育小孩,正如很多人不适合创业一样。
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   979 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 11ms · UTC 20:24 · PVG 04:24 · LAX 13:24 · JFK 16:24
Developed with CodeLauncher
♥ Do have faith in what you're doing.