V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
V2EX  ›  linuxsteam  ›  全部回复第 5 页 / 共 13 页
回复总数  252
1  2  3  4  5  6  7  8  9  10 ... 13  
@AoEiuV020CN
```shell
#!/bin/bash

# 输出到 stdin
echo "input"
for((i=0; i<10913; i++));do
# 输出到 stderr
echo "error" 1>&2
done
echo "input"
```

那怎么解释这个在 java 中就输出一行
1 input 呀

按道理应该是 stdin 完事,stderr 流继续呀。
最后一个 input 也没输出出来。因为在 java 程序里 卡在了 readLine()
@AoEiuV020CN 这个是解决办法,但是为啥缓存区满了 java 的 readLine()就无法读取了呢? 书上只给了这个结论。刚刚看源码,Java 是卡在 BufferedInputSteam.read1(byte[] b, int off, int len) 中 getInIfOpen().read(b,off,len);这里
这个 getInIfOpen()返回的就是 PipeInputSteam ,是印证了结论。但是我还是蒙😂
@forbreak @zmal
- 是有一部分的原因 导致阻塞在 readLine()
> 我把 readStreamInfo(process.getInputStream(), process.getErrorStream()); 注释掉就可以把代码跑到 waitFor()
waitFor()会等待子进程结束,实际情况是卡在这里。也就是说没卡在 readLine() 卡在子进程没有结束了

但是我把 shell 脚本的循环次数调整成 10911 readLine()也不阻塞了。
这就让我感觉与 \r \n EOF 无关了
2022 年 5 月 26 日
回复了 linuxsteam 创建的主题 Java Java Runtime.exec 是管道还是重定向?
@codehz 是的 我后来看的书中都说是 伪文件 属于文件系统
2022 年 5 月 25 日
回复了 linuxsteam 创建的主题 Java Java Runtime.exec 是管道还是重定向?
@codehz 这么说来 重定向 指的是通过文件交互的?
但是 Runtime.exec 实际调用的是 ProcessBuilder 呀,processBuilder 有个 redirectErrorStream(bool ) 这样的参数。JDK 应该不会写到文件 再用另一个进程去读取吧。。
2022 年 5 月 24 日
回复了 linuxsteam 创建的主题 Java Java Runtime.exec 是管道还是重定向?
@AoEiuV020CN 是的 我这方面基础比较辣鸡
我看了讲述管道的文章。中心思想 是两个进程通过一个管道进行传输标准流。
我目前没有发现这个管道。所以我认为就是 Java 进程启动其他进程。并且将其他进程的标准流重定向到 Java 进程中
@seanzxx 部分插件支持的。官方也有这样的介绍
2022 年 5 月 20 日
回复了 linuxsteam 创建的主题 git 请教 cherry-pick 冲突的原因
@monetto #9 这样会冲突吧
我们这里用分支当不同客户的版本,会总用 cherry-pick 。不是只有一个生产分支😂
2022 年 5 月 17 日
回复了 linuxsteam 创建的主题 git 请教 cherry-pick 冲突的原因
@monetto
> 如果当前分支已经包含部分修改过的代码(即使代码一摸一样,但是不属于一个 Commit ),也会造成冲突。
我现在遇到了 代码不属于同一个 commit ,但是成功合并变更点。没有提示冲突。。自己建立个仓库没模拟出来😭
@LonnyWong 那 windows 上 powershell 不支持的命令就无法用你这个 曲线支持了呗?
跟 busybox 这个轮子有啥区别?
之前把 win 笔记本放到包里非常热,发现以后就没这个习惯了。。。
2022 年 5 月 15 日
回复了 douglas1997 创建的主题 问与答 如何深入的理解 Java 类加载机制?
深入了解 JVM 虚拟机,个人认为很难啃。
看完某章以后,过一阵子总会有一些新的见解。然后就把之前的理解推翻了
2022 年 5 月 15 日
回复了 linuxsteam 创建的主题 git 请教 cherry-pick 冲突的原因
@bluesky139 也许吧。。希望可以复现。同事是通过 gerrit ,进行 cherry-pick 的。
2022 年 5 月 15 日
回复了 linuxsteam 创建的主题 git 请教 cherry-pick 冲突的原因
@bluesky139 唉,关键有次提交是 cherry-pick 过去的。少过去一部分代码。不知道为啥 git 会把有些代码忽略掉
2022 年 5 月 10 日
回复了 linuxsteam 创建的主题 问与答 请问 阿里的 ide.aliyun.com 是用什么技术弄的呀?
@0vels 牛的 就这个
2022 年 4 月 18 日
回复了 linuxsteam 创建的主题 问与答 请问 阿里的 ide.aliyun.com 是用什么技术弄的呀?
@heyjei 这个插件不能区分多租户啊。所以我想知道是不是 jb 公司他们家已经开始有多租户的产品了
@linuxsteam 但是 org.apache.ant » ant 是可选的。。。我又迷糊了。。。
关于第一个问题
我又查了下资料
https://mvnrepository.com/artifact/cglib/cglib/3.3.0
上述连接中是描述 cglib 依赖于 org.apache.ant » ant 的
但是该 jar 包 META-INF/中是没有 maven 这个文件夹的。自然我就发现他下面依赖的 org.apache.ant » ant 。。。
看来我又得研究研究 jar 包的元数据信息了
2021 年 12 月 9 日
回复了 linuxsteam 创建的主题 Java Java 线程上下文 类加载器 会进行传递吗?
@zxlzy 这个没担心,创建完就得 setContextClassloader 呀
set 完 以后 之前的 ContextClassloader 就会被覆盖了
1  2  3  4  5  6  7  8  9  10 ... 13  
About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3102 Online   Highest 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 26ms · UTC 13:52 · PVG 21:52 · LAX 06:52 · JFK 09:52
♥ Do have faith in what you're doing.