【如何用Java解析后台进程的输出?】教程文章相关的互联网学习教程文章

java – 在eclipse中构建进程

如何从eclipse运行build.xml的特定目标.我在我的war项目中进行了一些更改,并在eclipse下使用sysdeo tomcat插件来启动和停止服务但问题是现在我想调用build的目标以反映新的更改,我不知道该怎么做谢谢解决方法:在主菜单中 – >窗口 – >显示视图,选择Ant;将build.xml拖放到ant视图中.之后,您可以通过双击来执行ant-targets.

如何在java中销毁一个进程【代码】

我写了下面的代码.要从Java应用程序运行bat文件,我使用process.exec().但是蝙蝠可能会在某个时候挂起,所以我需要为这个过程设置一个超时.我在线程中启动一个新线程和一个新进程,我在线程中设置了一个超时,并在超时时终止该线程.但我发现超时发生时无法销毁进程.所以我很担心如何杀死这条庄园? 代码: StreamGobbler:import java.util.*;import java.io.*;class StreamGobbler extends Thread {InputStream is;String type;Stream...

java – 从Apache Tomcat取消部署/停止应用程序之前停止进程/线程

以编程方式可以知道何时从Java中取消部署/停止使用Web应用程序?我需要停止一些进程运行,但是没有设置Tomcat,只需要Java代码?解决方法:是.使用ServletContextListener.它将在创建和/或销毁上下文时通知您.

java进程没有出现在jvisualvm中

我使用的是JRE1.7.0_25.不久之前,我运行了一个由webex会话强制执行的Java更新.似乎在更新之后,我不再能够使用jvisualvm检查正在运行的java进程(进程已启动 – 我已检查过).除非将JRE更改回以前的JRE7版本,否则我还能做些什么来解决/解决问题? jvisualvm中的应用程序选项卡仅显示visualvm和eclipse – 而不是任何其他java进程.谢谢. 更新: 重启后,我收到以下错误:无法检测到本地Java应用程序. http://visualvm.java.net/trouble...

java – 进程池的应用程序级负载平衡器【代码】

我们在C中使用传统的单片软件,其作用类似于请求 – 回复TCP服务器.该软件是单线程的,可以同时处理一个请求.目前,我们已经修复了这些流程的池,以并行服务多个客户端. 由于消息量大,客户端会定期遇到请求处理的严重延迟.目前,我们有一个想法是通过在客户端和工作者之间引入一种代理来解决这个问题: 我们需要此代理的以下功能: >应用程序级负载平衡:通过检查请求上下文和客户端ID在工作者之间传播请求>控制和监控工作进程的生命周期...

java – Android Studio 3.0 Canary 8:高级分析不适用于所选进程

在Android Studio 3.0 Canary 3上,如果我记得正确的高级分析工作没有问题,一旦在运行配置中启用它.然而,在升级到AS 3 Canary 8之后,即使我启用高级分析,清理,重建和部署到运行Android 7.1.2的Google Pixel,Android Profiler仍然告诉我,“高级分析不适用于所选进程”. 在运行配置中,它还说: 启用高级分析(仅API级别<26)所以我把我的编译SDK提升到26 – 但仍然没有运气.如果相关,该应用程序是一个多索引应用程序.关于我缺少什么或者...

如何将创建的套接字传递给另一个Java进程

我们有一个应用程序,它创建了许多属于其线程的套接字.如果这个应用程序以某种方式失败,所有线程都会停止,这是不需要的.因此,为了克服这个问题,每个线程必须与主应用程序分离,如果其中一个线程失败,其他线程应该运行.我们想到的一件事是将创建的套接字传递给另一个java进程,那么正确的方法是什么? 还欢迎另一种方法吗? 等待你的建议……解决方法:分叉: 据我所知,您无法使用普通API在Java进程之间传递套接字句柄.但是,它似乎可以在...

java – 如何连接到另一个本地进程中的mBeanServer?【代码】

如果在启动JVM时设置“com.sun.management.jmxremote”系统属性,则可以运行jconsole或visualvm并连接到该本地mBeanServer.我想做他们正在做的同样的事情,但无法弄清楚如何做. 是否有可用于标识本地运行的JVM的服务URL? 我知道我可以通过在特定端口上设置jmxmp或rmi侦听器然后连接到该端口来实现此目的,但我不想这样做,因为这意味着我必须管理端口并知道哪个端口到哪个端口jvm(我们在同一台服务器上运行多个jvms).解决方法:感谢Nic...

在Java中杀死基于PID的进程【代码】

到目前为止我有这个:public static void main(String[] args) {try {String line;Process p = Runtime.getRuntime().exec(System.getenv("windir") + "\\system32\\" + "tasklist.exe");BufferedReader input = new BufferedReader(new InputStreamReader(p.getInputStream()));while ((line = input.readLine()) != null) {System.out.println(line); // <-- Parse data here.}input.close();} catch (Exception err) {err.print...

Java虚拟机六:Java进程占用cpu过高问题分析【图】

在平时开发过程中,经常会碰到Java进程占用cpu过高的现象,本篇将简单记录一下自己分析该类问题的步骤。1.使用 top -p <pid> 命令(<pid>为Java进程的id号)查看Java进程的cpu占用:该Java进程占用cpu达到92.2%。2.使用 top -Hp <pid> 命令(<pid>为Java进程的id号)查看该Java进程内所有线程的资源占用情况(按shft+p按照cpu占用进行排序,按shift+m按照内存占用进行排序)此处按照cpu排序:可以看到,有两个线程号为97243,9791...

java – tomcat上的文件监听器进程【代码】

我需要一个非常简单的进程来监听目录和在该目录上创建新文件时执行某些操作. 我想我需要一个线程池来做到这一点. 使用弹簧框架很容易实现,我通常使用弹簧框架,但现在我无法使用它.我只能使用tomcat,我该如何实现它?什么是“开始”该线程的切入点? 它必须是一个servlet吗? 谢谢解决方法:既然你提炼了这个问题,这里有另一个答案:如何在tomcat中启动一个守护进程: 首先,在web.xml中注册您的守护进程: &LT听众> my.package.se...

Java,检查Windows上当前是否正在运行任何进程ID

是否可以在Windows中检查Java中是否存在进程. 我有它可能的PID,我想知道它是否仍在运行.解决方法:看看这是否有帮助: http://blogs.oracle.com/vaibhav/entry/listing_java_process_from_java 该帖子解释了如何在Windows机器上运行所有PID:您必须将cmd调用的输出与PID进行比较,而不是将其打印出来. 如果您使用的是类Unix系统,则必须使用ps而不是cmd 从java代码调用系统命令不是一个非常便携的解决方案;然后,流程的实施因操作系统而...

linux下查java进程的那个线程占用CPU过高原因

1. 查找进程 top查看进程占用资源情况 明显看出java的那个进程占用过高cpu. 2.查找线程 使用top -H -p <pid>查看线程占用情况 3.查找java的堆栈信息 将线程id转换成十六进制 #printf %x 15664 #3d30 然后再使用jstack查询线程的堆栈信息 语法:jstack <pid> | grep -a 线程id(十六进制) jstack <pid> | grep -a 3d30 这样就找出了有问题的代码了。

在Java中,如何使用Google的番石榴CharStreams.toString进程中的inputStream?【代码】

我正在执行一个进程,并希望将其输出读入一个String.我希望使用Guava CharStreams.toString(InputSupplier< R>供应商),而不是处理try / catch / finally.不幸的是,Process的getInputStream()返回的流是类型InputStream而不是InputSupplier.如何使用它来创建一个与toString()一起使用的InputSupplier? 理想情况下,我可以这样做:CharStreams.toString(CharStreams.newReaderSupplier(process.getInputStream()))但是你无法从InputSt...

Java并发编程:进程和线程之由来(转)

转自:http://www.cnblogs.com/dolphin0520/p/3910667.html 一.操作系统中为什么会出现进程?说起进程的由来,我们需要从操作系统的发展历史谈起。也许在今天,我们无法想象在很多年以前计算机是什么样子。我们现在可以用计算机来做很多事情:办公、娱乐、上网,但是在计算机刚出现的时候,是为了解决数学计算的问题,因为很多大量的计算通过人力去完成是很耗时间和人力成本的。在最初的时候,计算机只能接受一些特定的指令,用户输...