V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  w568w  ›  全部回复第 28 页 / 共 43 页
回复总数  852
1 ... 24  25  26  27  28  29  30  31  32  33 ... 43  
317 天前
回复了 nnegier 创建的主题 Java Android 的 Java 是阉割版的?何解呢
> 怎样才能让 Android 用上非阉割版的 java

首先,Java 标准是分得很碎的,至少有 Java SE API 和 JDK API 两部分[1]。Java SE 保证在所有完整的 Java 实现中存在,但 JDK 只是可选。你说的 com.sun.net.httpserver.HttpServer 属于 jdk.httpserver 模块[2],所以甚至都不属于 Java SE ,而是 JDK 这个可选规范的一部分。

然后,Android 用的根本不是标准 JVM ,各种 Java 8 、11+ API 都是脱糖实现的[3],所以塞不进额外模块是理所当然的。先不说这些模块的实现可能依赖额外语言功能,光是有 JNI/JNA 就足够喝一壶了。这些平台下的最优解就是换用对应的库,不要想着沿用原来的写法了。

当然如果你钻牛角尖说「我就是要用 com.sun.net.httpserver.HttpServer ,别的库用了我晚上睡不着」,这里[4]也有人试过直接把 runtime 打包塞进 APK 里,至少 HttpServer 看起来能工作。

[1] https://docs.oracle.com/en/java/javase/23/docs/api/index.html
[2] https://docs.oracle.com/en/java/javase/23/docs/api/jdk.httpserver/module-summary.html
[3] https://developer.android.com/studio/write/java11-default-support-table
[4] https://stackoverflow.com/a/70486739
@SunsetShimmer #1 虽然但是,第一个就是楼主的吧
318 天前
回复了 HikariLan 创建的主题 Linux 从进程到协程:计算机的并发编程之路
「无栈协程=状态机」这样的思想在 Rust 这种无默认运行时的语言中表现得更明显: https://doc.rust-lang.org/stable/std/future/trait.Future.html

从上面的文档可以看到,Rust 对 Future 的定义就是:「一个有 poll(context) 方法的对象,每次执行返回 Pending 或者 Ready(result) 两种状态之一」。任何实现了 poll 方法的对象都被承认为一种协程。
318 天前
回复了 nnegier 创建的主题 Java Android 的 Java 是阉割版的?何解呢
这很难吗: https://letmegooglethat.com/?q=android+http+server+library

这种库实在太多以至于我不知道先给你推荐哪个……我用得最多的是 https://github.com/ktorio/ktor
Alacritty 和 Kitty 这种实在太 raw 了,除了终端几乎没有任何额外功能:标签页、快速连接 SSH…

我推荐 WezTerm

https://wezfurlong.org/wezterm/ssh.html
318 天前
回复了 zhouyin 创建的主题 Java Java 为什么能给 char 类型赋值中文字符
@sagaxu #33 这我倒没了解过,有来源吗?我的断言是上面文档里的描述:

> The Java platform uses the UTF-16 representation in char arrays and in the String and StringBuffer classes.
318 天前
回复了 zhouyin 创建的主题 Java Java 为什么能给 char 类型赋值中文字符
@w568w #29 手快发出去了。

再太长不看:char 就是 16 位整数,所以有的字符你无法赋值给 char 。int 则用于代表任意一个 Unicode 字符。Java 在 char[] 和 String 中储存字符串的方式是 UTF-16 编码。
318 天前
回复了 zhouyin 创建的主题 Java Java 为什么能给 char 类型赋值中文字符
这种涉及具体设计的东西,为什么不直接看文档呢: https://docs.oracle.com/en/java/javase/22/docs/api/java.base/java/lang/Character.html#unicode

太长不看:

char 数据类型基于 Unicode 规范,该规范将字符( characters )定义为固定宽度的 16 位实体。从 U+0000 到 U+FFFF 的字符集有时被称为基本多语言平面 (Basic Multilingual Plane ,BMP)。码位大于 U+FFFF 的字符称为补充字符( supplementary characters )。UTF-16 编码这些补充字符的方式是,利用一对 16 位整数(称为「代用码位」), 第一个来自高代用值范围(\uD800-\uDBFF ),第二个来自低代用值范围(\uDC00-\uDFFF )。

因此,一个 char 值代表基本多语言平面中的一个码位,包括 UTF-16 编码使用的代用码位。为了表示那些在 UTF-16 中需要多码位编码的补充字符们(如部分汉字、符号等),将用 int 类型来代表一个完整 Unicode 码位。

因此,那些接受 char 类型的字符串工具函数,将无法处理补充字符;而接受 int 类型的那些,就可以处理所有字符。
@MacsedProtoss #42 Flutter 一般根本接触不到多线程的,能用上 Isolate 的应用少之又少。好奇你说的「重活」是什么?写代码跑 FFT 还是自己实现数据库?

原生代码交互确实很傻逼,Flutter 文档语焉不详,但一般都有现成的跨平台包可以调吧,pub.dev 生态还是很好的。

你说的「不前端」的思维是什么?我看 SwiftUI 和 Flutter 的核心思想也挺像的啊。
@nicaiwss #27 RIL 其实并没有「那么高比例」的 unsafe 代码。除了和 C 对接的接口,其他几乎是完全 safe 的。

=============

另外我发觉很多人阅读能力确实为 0 。就引发争论的这件事而言,Rust in Linux 提交的补丁不是想「重写」内核中的东西,或者把看不顺眼的东西换成 Rust ,他们只是想「使用」 DMA 子系统。

他们提交的补丁主要涉及 DMA 的接口描述。再强调一遍,「并没有往 DMA 的 C 部分中加入任何 Rust 代码,是 Rust 编写的其他子系统需要用 DMA 」。有多少人看到标题就开始闭眼刷 RIIR ( Rust 重写一切)?

但仅这一点,就让负责 DMA 子系统的 C 维护者强烈反对了。这就意味着(一旦驱动依赖该子系统)主线中无法出现可用的 Rust 驱动,所以才让 Martin 沮丧。
@nicaiwss #23 都 2025 年了还有人信这种言论?也就骗骗自己了。

这样吧,你访问 https://github.com/trending/rust?since=monthly ,然后看看是不是重写,好吗?
@tomychen #18 实际上是房子频繁出问题,拆迁队早就赶过来说我给你免费拆,后续建我也包了(会抽人维护接口兼容性),房子主人( Linus )既不说好、也不说不好,搞得人家拆迁队走也不是、不走也不是,在旁边心存希望住了两三年,还要天天被某些房客扔狗屎恶心(某内核开发者故意天天改 interface 来恶心 RIL Team )。

最后拆迁队实在绷不住了,敲门问能不能先改下你家庭院,结果直接被认定为强拆强建,拆迁队愤而跑路。
319 天前
回复了 XuanYuan 创建的主题 宽带症候群 请教一下关于 AP 的 POE 供电的问题
@XuanYuan #2 乍一看没搞懂上下文,把油猴插件关了才发现这用户早被我 block 了。能在所有技术贴(包括自己发的)下面宣泄火气,不知道谁招惹他了。https://i.imgur.com/krir4IG.png
不错,感觉是一个很好的 tauri + candle 实践,先 star 一下。

看了下代码,感觉主要 platform-specific 的是音频捕获?可以考虑一下 https://crates.io/crates/cpal


p.s. Windows 有系统级实时字幕,功能上是重合的,不过经常识别不准。
我再补充一点:不像其他编译语言,go 设计的时候就没有关注二进制体积,也没有考虑性能优化,甚至都没有给用户任何能微调这些偏好的编译选项。它唯一保证的就是静态链接或者说 standalone executable 。比如就算某次更新后编译体积暴涨,go team 也不会觉得这是 bug 。

如果体积和性能是你的主要焦点,还是换其他语言比较好。
> IPv6 好像都是公网 ip

基本是,可以去 https://ipw.cn/ 查一下,如果 2000::/3 就是全球单播地址。

不过国内运营商千层防火墙,具体是否能连通其他机器,用上面地址的 ping 工具测一下。

> 是否可以替代现在的 IPV4 的公网地址

ipv6-only 的网站,访问者也需要有 ipv6 地址或者 6to4 隧道,否则无法访问。
322 天前
回复了 redreamality 创建的主题 分享发现 WiFi 连接解决方案 - 二维码极速联网
网站链接藏得有点隐蔽了,建议单独列一下
323 天前
回复了 ihehe 创建的主题 分享创造 OHY 又一款 WEB 打包成桌面应用的 CLI 工具
请问楼主知道现代浏览器支持叫 PWA 的技术吗?这个相比 PWA 有什么优势?
324 天前
回复了 calloc 创建的主题 分享发现 感觉互联网上错别字变多了
@datou #48 还可以加一条对语言异化的需求。有的小网络圈子很擅长让语言陌生化、密码化,主要目的是寻求群体共识,比如饭圈、谷圈
1 ... 24  25  26  27  28  29  30  31  32  33 ... 43  
关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   3977 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 38ms · UTC 05:16 · PVG 13:16 · LAX 21:16 · JFK 00:16
♥ Do have faith in what you're doing.