我有JDK,我正在尝试执行包含无限循环的Main.java程序,我想破解java Main.java< input.txt> output.txt命令,如果它进入无限循环,如果不是无限循环,不会不会打破程序..任何解决方案?遇到麻烦
.bss
答案 0 :(得分:1)
尝试将它包装在这样的类中(基本上将其包装在req.
中以获取pid并在后台以这种方式使用它)
nohup COMMAND > /dev/null 2>&1 & echo $!
答案 1 :(得分:1)
这只是一个建议。你的问题会有更好的答案。
在java infinity循环中检查来自其他文本文件的某些值。就像
while true {
v = readFile('your_txt_file.txt')
if v == "true" {
break;
}
//do your stuff }
如果您可以将 your_txt_file.txt 值设置为false,除了 true 之外,那么java循环将会中断。
答案 2 :(得分:0)
你需要打开一个端口来监听java,然后连接并从php发送一些东西到该端口。
查看@TomaszNurkiewicz回答here他说
“”“
你可能想要的是创建一个ServerSocket并听取它:
ServerSocket serverSocket = new ServerSocket(4000);
Socket socket = serverSocket.accept();
第二行将阻塞,直到其他一些软件在端口4000上连接到您的计算机。然后您可以从返回的套接字读取。看看本教程,这实际上是一个非常广泛的主题(线程,协议......)
“”“
并且用php打开套接字你可以使用来自here的@sanmi提供the manual的代码(或接近它的一些代码)
“”“
<?php
error_reporting(E_ALL);
/* Get the port for the WWW service. */
$service_port = getservbyname('www', 'tcp');
/* Get the IP address for the target host. */
$address = gethostbyname('www.example.com');
/* Create a TCP/IP socket. */
$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
if ($socket === false) {
echo "socket_create() failed: reason: " .
socket_strerror(socket_last_error()) . "\n";
}
echo "Attempting to connect to '$address' on port '$service_port'...";
$result = socket_connect($socket, $address, $service_port);
if ($result === false) {
echo "socket_connect() failed.\nReason: ($result) " .
socket_strerror(socket_last_error($socket)) . "\n";
}
$in = "HEAD / HTTP/1.1\r\n";
$in .= "Host: www.example.com\r\n";
$in .= "Connection: Close\r\n\r\n";
$out = '';
echo "Sending HTTP HEAD request...";
socket_write($socket, $in, strlen($in));
echo "OK.\n";
echo "Reading response:\n\n";
while ($out = socket_read($socket, 2048)) {
echo $out;
}
socket_close($socket);
?>
“”“