V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  byte10  ›  全部回复第 35 页 / 共 100 页
回复总数  1993
1 ... 31  32  33  34  35  36  37  38  39  40 ... 100  
2023-05-05 07:45:07 +08:00
回复了 chenfeng9527 创建的主题 macOS 求一个 M1 iMac 外接硬盘最佳方案
可以考虑 SSD 的 NAS ,一个 200 小主机 + 300 元 ssd 搞定,局域网内用 nas 。然后备份一份到阿里云、天翼云,任何地方都可以随时使用。
2023-05-04 18:09:08 +08:00
回复了 cwcc 创建的主题 问与答 有没有办法让 MacBook 作为一个音响使用,使用 3.5mm 接
要不 还是买一个小音响吧
2023-05-04 16:21:36 +08:00
回复了 byte10 创建的主题 Java 有没有 vert.x 或者有关注 Java 虚拟线程的群
@asssfsdfw 嗯👌🏻,我了解下这个
2023-05-03 20:53:32 +08:00
回复了 byte10 创建的主题 Java 有没有 vert.x 或者有关注 Java 虚拟线程的群
@lixintcwdsg 嗯 感谢,对于 eventloop 我可能没你理解那么深刻。vert.x 的 Verticle 就是线程安全的,因为它绑定在同一 eventloop 线程中,任何时刻的代码都运行在同一个线程,所以不存在并发安全。我代码贴出的代码示例,有描述我的需求,就是想把异步编程转成同步编程。虚拟线程可以做到。如果使用虚拟线程,那么就会存在线程安全问题,所以我才想把它绑定到 eventloop 的 EventLoop carrier ,这样就可以绑定到同一个 EventLoop 线程了,就不存在线程安全问题了
2023-05-03 20:41:19 +08:00
回复了 byte10 创建的主题 Java 有没有 vert.x 或者有关注 Java 虚拟线程的群
@D3EP 我确实也是改成了 AsyncAppender 好像也不行,回头我再试试。但是我 手动执行 Lock.lock() 来模拟 log.info ,也不会触发这个 park() 的 bug 。所以问题点 好像也不一定是 线程的 park 导致的,可能是 Logback 的 LockSupport.park()。不过这个日志确实不适合 EventLoop ,我要换 vert.x 自带的日志才好。
@yazinnnn 我并不是要在 vert.x 去锁同步代码。。我目标是需要把异步编程 改成同步编程。另外你说的 vertx5 要去回调 API? 那 直接同步返回吗?
2023-05-03 19:23:28 +08:00
回复了 byte10 创建的主题 Java 有没有 vert.x 或者有关注 Java 虚拟线程的群
@leatomic 好家伙这个调试 也是大问题,看来还是要虚拟线程才行,,不然一直堵塞 eventloop 的 代码。。还是引入虚拟线程比较好调试。
2023-05-03 19:15:52 +08:00
回复了 byte10 创建的主题 Java 有没有 vert.x 或者有关注 Java 虚拟线程的群
@dreamlike 嗯好的,你那个不错,我研究下。
2023-05-03 16:42:48 +08:00
回复了 byte10 创建的主题 Java 有没有 vert.x 或者有关注 Java 虚拟线程的群
@dreamlike
@WispZhan
两位提到的 continuaion Coroutine 确实是我的想要的东西 应该能解决异步编程问题,不知道实现起来是否很难。。回头研究下,那就可以不用虚拟线程了。
2023-05-03 16:31:43 +08:00
回复了 byte10 创建的主题 Java 有没有 vert.x 或者有关注 Java 虚拟线程的群
@lixintcwdsg @lightjiao @WispZhan @dreamlike

我添加代码到 附言那里,刚才那个代码展示太乱了,不方便阅读。那代码示例 应该很清晰描述我的应用场景了。

目前还不想使用 kotlin 来重构,太多东西了。
2023-05-03 16:21:16 +08:00
回复了 byte10 创建的主题 Java 有没有 vert.x 或者有关注 Java 虚拟线程的群
@lixintcwdsg @lightjiao @WispZhan @dreamlike

这个一个代码示例,一个是异步写法,一个是同步的写法。我是用虚拟线程就是了能解决异步编程的问题。当然是用传统的线程池也可以解决异步编程的问题,但是明显太重。。 这个就是我是用虚拟线程的原因。


```
public class AsyncVerticle extends AbstractVerticle {

private Map<String, String> map = new HashMap<>(2);

public void start() throws Exception {
// map 的操作是线程安全的,但是 http 请求代码的模式是异步编程
vertx.setPeriodic(123, id -> {
httpRequest().onSuccess(res -> {
if (res != null) {
httpRequest().onSuccess(nextRes -> {
map.put("result", nextRes);
});
}
});
});
vertx.eventBus().consumer("httpReq", event -> {
httpRequest().onSuccess(res -> {
map.put("result", res);
});
});

// =====================使用虚拟线程,并且使用同步编程==================
SyncVertxWraper syncVertx = new SyncVertxWraper((VertxInternal) getVertx(), true);
// 启动虚拟线程运行,下面代码全是运行在虚拟线程中
syncVertx.getOrCreateContext().runOnContext((ctx) -> {
vertx.setPeriodic(123, id -> {
// 运行在虚拟线程中,如果虚拟线程绑定在同一个 eventloop 线程中,那么 map 就会线程安全。异步可以转成同步写法
String res = Async.await( httpRequest());
if (res != null) {
res = Async.await( httpRequest());
map.put("result", res);
}
});
vertx.eventBus().consumer("httpReq", httpResult -> {
// 运行在虚拟线程中,如果虚拟线程绑定在同一个 eventloop 线程中,那么 map 就会线程安全。
String res = Async.await( httpRequest());
map.put("result", res);
});
});
}

}
```
2023-05-03 15:59:21 +08:00
回复了 byte10 创建的主题 Java 有没有 vert.x 或者有关注 Java 虚拟线程的群
@lixintcwdsg 我觉得 虚拟线程并不是干掉 eventloop 的。vert.x actor 模型下 多线程并发变得安全,虚拟线程并没有解决线程安全的问题。即便有虚拟线程, 仍然需要它 来解决多线程并发的问题。
2023-05-03 11:26:57 +08:00
回复了 byte10 创建的主题 Java 有没有 vert.x 或者有关注 Java 虚拟线程的群
@lightjiao 额,java 确实是没有 async 和 await 。vert.x 确实很强,设计上就解决了很多问题。
@dreamlike continuation api ,我去研究下。但是这个 continuation 能否解决 多线程安全的问题呢 ,因为我的目的是避免多线程安全问题。
2023-05-03 10:52:38 +08:00
回复了 byte10 创建的主题 Java 有没有 vert.x 或者有关注 Java 虚拟线程的群
@lixintcwdsg 额,这个和 vertx 不太一样。你说业务线程池是可以直接用虚拟线程,但是业务线程会产生线程并发的安全问题,所以 verticle 才需要绑定一个 eventloop 线程。而我的虚拟线程 都是从在这个 eventloop 线程上运行,来确保我所有的业务都是线程安全的。

现在的问题 平台 eventloop 线程直接去运行 log.info() 这个方法就会出问题,我无法控制这个 eventloop 线程 会不会被其他的地方使用到,而且它是 vert.x 框架的东西,里面会不会有其他的坑我也不知道。我可以确保 我的代码不会直接使用 eventloop 线程 执行任何 代码,但是也不能确保其他人开发 会不会使用上。而且日志是刚需。。。比较难搞。

使用虚拟线程 本质是为了 解决异步的问题,如果用普通线程池也可以解决,但是就会产生多线程安全的问题。如果我的虚拟线程 固定在定一个 eventloop 线程运行,就能保证线程并发安全,又能解决异步的问题。
2023-05-01 17:38:40 +08:00
回复了 softerzhangyu 创建的主题 问与答 同价位选择 Mac 还是 win
@softerzhangyu vscode 远程 开发 remote ssh ,你可以搜索下。你是做什么言语开发的?
2023-05-01 11:12:55 +08:00
回复了 softerzhangyu 创建的主题 问与答 同价位选择 Mac 还是 win
如果楼主可以接受 vscode 的 远程开发,那么可以用一个丐版的 macbook air M1 。然后全程到 remote 到远程机器上开发。我就是这样操作的。现在内存便宜,一个 5800H 小主机 1500 ,64G 内存 700 ,整机也就是 2500 不到了。不在乎体积的话,可以搞 7D12 ,32 核心,性能也是很强,不到 100w 功耗也很巴适。多核性能却接近到 13900K ,cpuz 差不多 16000 分,还要啥自行车呢。

远程主机的好处是 code anywhere ,客户端可以是 ipad ,可以是 windows ,macos 。不用每次换电脑安装开发环境
2023-04-23 11:08:18 +08:00
回复了 binarymann 创建的主题 问与答 固态硬盘辣么便宜了,当下性价比最高的外置是?
@dcsite 👌🏻,收到
2023-04-23 09:31:17 +08:00
回复了 binarymann 创建的主题 问与答 固态硬盘辣么便宜了,当下性价比最高的外置是?
最便宜当前是阿里云盘啊,不限速。配合 alist-encrypt ,上传自动加密,又能网页在线观看加密的视频和图片,文本,还要啥自行车😄。又支持 wendav 查看加密的图片和视频,很 6
@Puteulanus 这个玩意不错。不知道怎么玩,性能简直入我心。超强,很细腻,待机功耗低。
@LxnChan alist-encrypt 就是可以理解为一个反向代理 nginx ,S905L3A arm 盒子 单核可以跑满 500M ,一个字很强,看看我视频演示,看完你就会喜欢上。https://www.zhihu.com/zvideo/1627064703548657664
@VoiceEXONE 可以看看 alist-encrypt ,自动加密文件,又能自动在线查看文件,非常不错的设计。透明加密,支持 AES 加密,RC4 加密
@leefor2020 那可以看看我的这个 alist-encrypt ,就是自动做这个事情的了
@guanzhangzhang 没事啦,随便搞啦,生死看淡。你试试呗,还是很不错哦。
1 ... 31  32  33  34  35  36  37  38  39  40 ... 100  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3108 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 39ms · UTC 13:32 · PVG 21:32 · LAX 05:32 · JFK 08:32
Developed with CodeLauncher
♥ Do have faith in what you're doing.