java编程 如何监视一个软件程序的运行从而使另一个程序的运行 求代码
Timer timer=new Timer();
泰和网站建设公司创新互联公司,泰和网站设计制作,有大型网站制作公司丰富经验。已为泰和上千多家提供企业网站建设服务。企业网站搭建\成都外贸网站建设要多少钱,请找那个售后服务好的泰和做网站的公司定做!
tt.schedule(new TimerTask(){
public void run(){
//要执行的内容
}
},0,60*60*1000);
用定时器可以监听,在在run()中写你要执行的代码
Java监控一个进程的执行状态
应用程序很高兴对所有这些活动一无所知。它只知道自己的虚拟地址空间。但是,如果当前在主存中的页面集(称为 驻留集)少于实际要使用的页面集(称为 工作集),应用程序的性能很快就会显著降低。(不幸的是,本文中您将看到,我们要讨论的工具常常交换使用这两个术语,尽管它们指的是完全不同的事物。) Task Manager 和 PerfMon 我们首先考察两种最常见的工具:Task Manager 和 PerfMon。这两个工具都随 Windows 一起提供,因此由此起步比较容易。 Task Manager Task Manager 是一种非常见的 Windows 进程监控程序。您可以通过熟悉的 Ctrl-Alt-Delete 组合键来启动它,或者右击任务栏。Processes 选项卡显示了最详细的信息,如图 2 所示。 图 2. Task Manager 进程选项卡 图 2 中显示的列已经通过选择 View -- Select Columns 作了调整。有些列标题非常含糊,但可以在 Task Manager 帮助中找到各列的定义。和进程内存使用情况关系最密切的计数器包括: Mem Usage(内存使用):在线帮助将其称为进程的工作集(尽管很多人称之为驻留集)——当前在主存中的页面集。但是这个数值包含能够和其他进程共享的页面,因此要注意避免重复计算。比方说,如果要计算共享同一个 DLL 的两个进程的总内存占用情况,不能简单地把“内存使用”值相加。 Peak Mem Usage(内存使用高峰值):进程启动以来 Mem Usage(内存使用)字段的最大值。 Page Faults(页面错误):进程启动以来要访问的页面不在主存中的总次数。 VM Size(虚拟内存大小):联机帮助将其称为“分配给进程私有虚拟内存总数。”更确切地说,这是进程所 提交的内存。如果进程保留内存而没有提交,那么该值就与总地址空间的大小有很大的差别。 虽然 Windows 文档将 Mem Usage(内存使用)称为工作集,但在该上下文中,它实际上指的是很多人所说的驻留集(resident set),明白这一点很重要。您可以在 Memory Management Reference 术语表(请参阅 参考资料)中找到这些术语的定义。 工作集 更通常的含义指的是一个逻辑概念,即在某一点上为了避免分页操作,进程需要驻留在内存中的那些页面。 PerfMon 随 Windows 一起提供的另一种 Microsoft 工具是 PerfMon,它监控各种各样的计数器,从打印队列到电话。PerfMon 通常在系统路径中,因此可以在命令行中输入 perfmon 来启动它。这个工具的优点是以图形化的方式显示计数器,很容易看到计数器随时间的变化情况。 请在 PerfMon 窗口上方的工具栏中单击 + 按钮,这样会打开一个对话框让您选择要监控的计数器,如图 3a 所示。计数器按照 性能对象分成不同的类别。与内存使用关系最密切的两个类是 Memory 和 Process。选中计数器然后单击 Explain 按钮,就可以看到计数器的定义。说明出现在主对话框下方弹出的单独的窗口中。
在linux里面怎么监控一个java程序的运行
可以写一个脚本进行监控
可以用 ps top jstack 等命令来查看和监控进程。
参考1
参考2
我是海腾数据中心的技术小哥,很高兴为您解答问题。
java实时监控问题
使用java的定时器吧
首先创建一个Servlet监听器,(服务器一启动监听器就执行的)
在监听器中创建一个定时器(这才是最重要的)
创建一条短信发送线程(主要用来发送短信)
定时器每5秒查一次数据库(这个时间可以自己定义,当然也可以直接用线程+死循环执行)
当发现数据后立马传递给短信的线程
Servlet监听器: ServletContextListener
java定时器TimerTask
实现起来代码挺多的,这里就不一一列出了,如果不明白欢迎追问,请采纳哈
追问
用定时器会不会耗资源? 另外发送短信的线程是买短信猫的时候商家就提供好的直接条用一个函数,我需要把新添加的数据查询出来。定时器可以操作查询吗?
回答
不会,一条线程不会耗什么资源的,这个你可以测试一下,我说的这种方法,就类似消息队列(你也可以查看一下消息队列的机制)android 里就有个消息队列,里面就是一个死循环不停的取消息,和发消息
也就是说你这个定时器就固定专门用来查询消息,一但发现了数据,就调用你商家就提供好的函数
触发器只能触发数据的事件,不能触发java的事件,貌似实现不了的
希望能够帮助到你,望采纳!
如何监控java进程
JDK本身提供了很多方便的JVM性能调优监控工具,除了集成式的VisualVM和jConsole外,还有jps、jstack、jmap、jhat、jstat等小巧的工具,本博客希望能起抛砖引玉之用,让大家能开始对JVM性能调优的常用工具有所了解。
现实企业级Java开发中,有时候我们会碰到下面这些问题:
OutOfMemoryError,内存不足
内存泄露
线程死锁
锁争用(Lock Contention)
Java进程消耗CPU过高
......
这些问题在日常开发中可能被很多人忽视(比如有的人遇到上面的问题只是重启服务器或者调大内存,而不会深究问题根源),但能够理解并解决这些问题是Java程序员进阶的必备要求
A、 jps(Java Virtual Machine Process Status Tool)
jps主要用来输出JVM中运行的进程状态信息
B、 jstack
jstack主要用来查看某个Java进程内的线程堆栈信息。
C、 jmap(Memory Map)和jhat(java Heap Analysis Tool)
jmap用来查看堆内存使用状况,一般结合jhat使用。
D、jstat(JVM统计监测工具)
当前标题:监控java代码运行,java程序监控
网站URL:http://lswzjz.com/article/dsejjde.html