我正在尝试使用java中的Processbuilder运行Linux进程,然后读取输入流和错误流。Linux进程是一个阻塞进程,它将输出写入console/stdout。
当我尝试读取java进程的输入流(错误流重定向)时,直到进程写入到4K字节时,我才得到任何数据。一旦进程输出达到这个限制,我就可以在输入流中获得可用的数据。如何改变这种行为,并从输入流中实时获取数据,而不是等到达到4K。
这是我尝试过的:
process = new ProcessBuilder().command("some daemon program", "arg1").start();
我有一个rake任务,它解析一个流API并将数据输入到数据库中。流API是实时提要,为了让实时数据进入数据库,rake任务应该持续运行。一旦调用rake任务,它就会连续运行并解析数据。现在我已经启动了rake任务,它正在运行。问题是,如果我关闭终端或重启服务器,rake任务将停止。因此,我需要linux中的一个脚本(类似于用于启动或停止apache服务器的脚本),它执行以下操作:
1. start the rake task by calling rake command (rake parse:stream) from the RAILS-ROOT (application director
我使用OpenGL 4.4驱动程序和ATI驱动程序(仅用于内核3.13)
opengl 4.4的系统要求:
Xorg/Xserver 7.4 and above (up to 1.15)
Linux kernel 2.6 or above (up to 3.13)
glibc version 2.2 or 2.3
POSIX Shared Memory (/dev/shm) support is required for 3D applications.
现在我使用3.13.30-lowlanency kernel,没有找到实时内核。给我链接或源代码实时内核3.13 thx。
https://