gpt4 book ai didi

java - C# 进程读取 java 进程的输出流,而不使用套接字、IDL/CORBA、文件、数据库或 JNI

转载 作者:行者123 更新时间:2023-11-30 08:02:29 24 4
gpt4 key购买 nike

我需要向我的 Web 应用程序添加一项服务,该服务从命令行打开 java 进程,并通过该 jvm 线程的输入/输出流进行通信,而不是使用 IDL 或套接字或数据库或文件。进程之间是否有这样的联系,很接近纯java?

C# Web 服务器打开 helloworld.jar 并向其控制台(console.in)写入 1M 字节,然后等待 console.out。我读到命令行参数不能超过千字节级别。如果有这样的通信,也许流可以达到兆字节?

仅与字符串进行通信就可以,但使用对象本身会更好。

最佳答案

this我演示了在 executiable-jar(STW 应用程序)和 Winform 之间使用 stdin/out 进行 IPC 的方法应用程序。

答案已链接到解决方案 I made .

要读取和写入应用程序,您可以使用以下方法:WriteLineOutputDataReceived(Process 方法, see this class )。

Java 进程中,您使用 Scanner 进行读取,使用 Println 进行写入。( this is the java class )

通信是通过字符串进行的。您可以将对象序列化为 json,然后传递它们。(使用 Json.netGson)

关于java - C# 进程读取 java 进程的输出流,而不使用套接字、IDL/CORBA、文件、数据库或 JNI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31686747/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com