Rust算法教程 The Algos (algorithms)2024/3/7 20:44 Rust算法教程 The Algos (algorithms) https://algo.course.rs/print.html 1/270 Algos算法教程 Rust作为⼀⻔现代化的系统编程语⾔,拥有与C/C++类似的性能,同时⼜能做⾮常底层的性能优 化,因此⾮常适合写算法和leetcode。 Algos 算法教程涵盖了各种常⽤算法和数据结构的代码实现, 我们深知⾃身⽔平的局限性,因此⾮常欢迎各路⼤神加⼊进来,共同打造这⻔未来可以在中国乃⾄ 全世界都排得上号的算法教程! 2024/3/7 20:44 Rust算法教程 The Algos (algorithms) https://algo.course.rs/print.html 2/270 排序算法 所谓排序,就是使⼀串记录,按照其中的某个或某些关键字的⼤⼩,递增或递减的排列起来的操 作。 ,得经过⼤量的推理和分析。 2024/3/7 20:44 Rust算法教程 The Algos (algorithms) https://algo.course.rs/print.html 3/270 2024/3/7 20:44 Rust算法教程 The Algos (algorithms) https://algo.course.rs/print.html 4/270 冒泡排序 pub0 码力 | 270 页 | 8.46 MB | 1 年前3
Await-Tree Async Rust 可观测性的灵丹妙药 - 赵梓淇开发者大会 Await-Tree Async Rust 可观测性的灵丹妙药 赵梓淇 Bugen Zhao Await-Tree Async Rust 可观测性的灵丹妙药 Await-Tree 的 设计原理与实现 2 回顾 Async Rust 的设计与痛点 1 Await-Tree 的 应用与真实案例 3 Await-Tree Async Rust 可观测性的灵丹妙药 Await-Tree Await-Tree 的 设计原理与实现 2 回顾 Async Rust 的设计与痛点 1 Await-Tree 的 应用与真实案例 3 Async Rust 的优势 • 异步编程的共同优势 • async/await 关键字 • 用户态调度 • Async Rust 的独特优势 • Ownership 与 Lifetime • 无栈协程 Async Rust 回顾 Rust 的无栈协程抽象 的无栈协程抽象 — Future Async Rust 回顾 • 通过 poll 驱动的状态机 • 组合嵌套为调度单元: Task • async fn 语法糖 Async Rust 观测与调试的痛点 Async Rust 回顾 • 特性: Future 灵活的可组合性 • 任意定制 Poll 的执行逻辑 (Join / Select / Timeout) • 动态的调用关系 • 痛点:观测与调试工具无法理解灵活的执行逻辑0 码力 | 37 页 | 8.60 MB | 1 年前3
WebAssembly 简介 - 陈思衡之类的 async runtime 中执行一些特别的 WASM 时就会遇到 WASM 阻塞 tokio 最终导致服务不可用的情况。 阻塞示例 WASM 使用场景和问题 利用语言本身 Async 机制 因为 Rust 的 async 机制是无栈协程,会将 async 部分在编译时隐式转换成一个 Future。 所以我们可以利用这一点来实现一个 Async 的 Wasm。 Async Wasm Photo / image / chart 利用本身 Async 机制 自行实现 Async Runtime Async 的 Wasm • 在 wasm 中把 future 存入固定内存处。 • 导出 poll 函数给 host 调用。 • 把 host function 包装成自定义 Future。 • 实现简单 利用本身 Async 机制 优点 • 方案不通用(wasm 局限于某一种语言) 无法与现有生态配合 缺点 Async 的 Wasm 基于 fiber / ucontext Async Wasm 解决方案 wasmtime-fiber 是一个通过内联汇编,保存当前寄存 器和栈数据来实现有栈协程的 rust 库。 wasmtime-fiber Ucontext 和 fiber 功能相同,但是 linux 的系统库。 ucontext 执行流程 Async Wasm 解决方案0 码力 | 24 页 | 773.46 KB | 1 年前3
Julia 中文文档1 method) 开始一些使用 f(x) 的运算: julia> g(x) = f(x) g (generic function with 1 method) julia> t = @async f(wait()); yield(); 现在我们给 f(x) 加上一些新的方法: julia> f(x::Int) = "definition for Int" f (generic function julia> g(1) "definition for Int" julia> fetch(schedule(t, 1)) "original definition" julia> t = @async f(wait()); yield(); julia> fetch(schedule(t, 1)) "definition for Int" 13.5. 使用参数方法设计样式 137 13 示例 让我们直接进入一个 TCP 套接字相关的简单示例。此功能位于名为 Sockets 的标准库中。让我们先 创建一个简单的服务器: julia> using Sockets julia> @async begin server = listen(2000) while true sock = accept(server) println("Hello World\n") end end0 码力 | 1238 页 | 4.59 MB | 1 年前3
httpd 2.4.20 中文文档MaxClients has been renamed to MaxRequestWorkers, which describes more accurately what it does. For async MPMs, like event, the maximum number of clients is not equivalent than the number of worker threads than NOT ACCEPTABLE or MULTIPLE CHOICES responses. In addition, the negotiation and MultiViews algorithms have been cleaned up to provide more consistent results and a new form of type map that can include control over deciding on the 'best' variant, the result is therefore dependent on the specific algorithms used by the browser. As part of the transparent negotiation process, the browser can ask httpd0 码力 | 2533 页 | 2.09 MB | 1 年前3
httpd 2.4.23 中文文档MaxClients has been renamed to MaxRequestWorkers, which describes more accurately what it does. For async MPMs, like event, the maximum number of clients is not equivalent than the number of worker threads than NOT ACCEPTABLE or MULTIPLE CHOICES responses. In addition, the negotiation and MultiViews algorithms have been cleaned up to provide more consistent results and a new form of type map that can include control over deciding on the 'best' variant, the result is therefore dependent on the specific algorithms used by the browser. As part of the transparent negotiation process, the browser can ask httpd0 码力 | 2559 页 | 2.11 MB | 1 年前3
httpd 2.4.25 中文文档MaxClients has been renamed to MaxRequestWorkers, which describes more accurately what it does. For async MPMs, like event, the maximum number of clients is not equivalent than the number of worker threads than NOT ACCEPTABLE or MULTIPLE CHOICES responses. In addition, the negotiation and MultiViews algorithms have been cleaned up to provide more consistent results and a new form of type map that can include control over deciding on the 'best' variant, the result is therefore dependent on the specific algorithms used by the browser. As part of the transparent negotiation process, the browser can ask httpd0 码力 | 2573 页 | 2.12 MB | 1 年前3
httpd 2.4.28 中文文档MaxClients has been renamed to MaxRequestWorkers, which describes more accurately what it does. For async MPMs, like event, the maximum number of clients is not equivalent than the number of worker threads than NOT ACCEPTABLE or MULTIPLE CHOICES responses. In addition, the negotiation and MultiViews algorithms have been cleaned up to provide more consistent results and a new form of type map that can include control over deciding on the 'best' variant, the result is therefore dependent on the specific algorithms used by the browser. As part of the transparent negotiation process, the browser can ask httpd0 码力 | 2659 页 | 3.10 MB | 1 年前3
httpd 2.4.33 中文文档MaxClients has been renamed to MaxRequestWorkers, which describes more accurately what it does. For async MPMs, like event, the maximum number of clients is not equivalent than the number of worker threads than NOT ACCEPTABLE or MULTIPLE CHOICES responses. In addition, the negotiation and MultiViews algorithms have been cleaned up to provide more consistent results and a new form of type map that can include control over deciding on the 'best' variant, the result is therefore dependent on the specific algorithms used by the browser. As part of the transparent negotiation process, the browser can ask httpd0 码力 | 2692 页 | 3.12 MB | 1 年前3
Kotlin 1.9.10 官方文档 中文版
variables. Lincheck guide – learn how to set up and use the Lincheck framework for testing concurrent algorithms on the JVM. 新增与更新教程 Get started with Gradle and Kotlin/JVM – create a console application using along with other updates: 新版内存管理器的性能改进 与 JVM 及 JS IR 后端统一编译器插件 ABI 支持独立的 Android 可执行文件 与 Swift async/await 互操作:返回 Void 而不是 KotlinUnit 通过 Objective-C 桥接禁止未声明的异常 改进了 CocoaPods 集成 覆盖了 Kotlin/Native Swift async/await 互操作:返回 Void 而不是 KotlinUnit Kotlin suspend functions now return the Void type instead of KotlinUnit in Swift. This is the result of the improved interop with Swift's async / await0 码力 | 3753 页 | 29.69 MB | 1 年前3
共 312 条
- 1
- 2
- 3
- 4
- 5
- 6
- 32













