真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

進(jìn)程狀態(tài)實(shí)驗(yàn)Java代碼,如果用一個(gè)進(jìn)程來(lái)描述實(shí)驗(yàn)中的狀態(tài)機(jī),程序如何修改

java獲取進(jìn)程的運(yùn)行狀態(tài)。主要是獲取該進(jìn)程有沒(méi)有終止

將下面代碼里面的processName 變成你這個(gè)進(jìn)程的名字ClientDemo.exe就可以了

創(chuàng)新互聯(lián)公司長(zhǎng)期為成百上千家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開(kāi)放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為樂(lè)陵企業(yè)提供專業(yè)的網(wǎng)站制作、成都網(wǎng)站制作,樂(lè)陵網(wǎng)站改版等技術(shù)服務(wù)。擁有10多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開(kāi)發(fā)。

BufferedReader br=null;

try{

Process proc=Runtime.getRuntime().exec("tasklist -fi " + '"' + "imagename eq " + processName +'"');

br=new BufferedReader(new InputStreamReader(proc.getInputStream()));

String line=null;

while((line=br.readLine())!=null){

//判斷指定的進(jìn)程是否在運(yùn)行

if(line.contains(processName)){

return true;

}

}

return false;

}catch(Exception e){

e.printStackTrace();

return false;

}finally{

if(br!=null){

try{

br.close();

}catch(Exception ex){

}

}

}

java進(jìn)程編程

以下代碼就是了。

import?java.io.File;

import?java.io.FileOutputStream;

import?java.io.InputStream;

import?java.io.PrintWriter;

import?java.util.Scanner;

public?class?ProcessStarter2?{

public?static?void?main(String?args[])?{

Scanner?in?=?null;

PrintWriter?writer?=?null;

try?{

System.out.println("\n\nParent?Started..");

System.out.println("\nStarting?Child?Process..");

//?Build?Child?Process?from?command?line?arguments

ProcessBuilder?pb?=?new?ProcessBuilder("systeminfo");

//?Start?Child?process

Process?child?=?pb.start();

//?Get?stream?from?child?process?(IPC)

InputStream?instream?=?child.getInputStream();

//?因?yàn)閏md環(huán)境默認(rèn)編碼跟隨系統(tǒng)為GB2312

in?=?new?Scanner(instream,?"GB2312");

//?Read?the?child?process?output

System.out.println("\nReading?from?Child?Process..");

FileOutputStream?outputStream?=?new?FileOutputStream(new?File("d:/testaaaa.txt"));

writer?=?new?PrintWriter(outputStream);

while?(in.hasNextLine())?{

writer.println(in.nextLine());

}

child.waitFor();?//?parent?blocks?and?waits?for?child?to?finish

System.out.println("\nDone..?");

}?catch?(Exception?e)?{

System.out.println(e);

}?finally?{

if?(in?!=?null)?{

in.close();

}

if?(writer?!=?null)?{

writer.close();

}

}

}

}

Java監(jiān)控一個(gè)進(jìn)程的執(zhí)行狀態(tài)

應(yīng)用程序很高興對(duì)所有這些活動(dòng)一無(wú)所知。它只知道自己的虛擬地址空間。但是,如果當(dāng)前在主存中的頁(yè)面集(稱為 駐留集)少于實(shí)際要使用的頁(yè)面集(稱為 工作集),應(yīng)用程序的性能很快就會(huì)顯著降低。(不幸的是,本文中您將看到,我們要討論的工具常常交換使用這兩個(gè)術(shù)語(yǔ),盡管它們指的是完全不同的事物。) Task Manager 和 PerfMon 我們首先考察兩種最常見(jiàn)的工具:Task Manager 和 PerfMon。這兩個(gè)工具都隨 Windows 一起提供,因此由此起步比較容易。 Task Manager Task Manager 是一種非常見(jiàn)的 Windows 進(jìn)程監(jiān)控程序。您可以通過(guò)熟悉的 Ctrl-Alt-Delete 組合鍵來(lái)啟動(dòng)它,或者右擊任務(wù)欄。Processes 選項(xiàng)卡顯示了最詳細(xì)的信息,如圖 2 所示。 圖 2. Task Manager 進(jìn)程選項(xiàng)卡 圖 2 中顯示的列已經(jīng)通過(guò)選擇 View -- Select Columns 作了調(diào)整。有些列標(biāo)題非常含糊,但可以在 Task Manager 幫助中找到各列的定義。和進(jìn)程內(nèi)存使用情況關(guān)系最密切的計(jì)數(shù)器包括: Mem Usage(內(nèi)存使用):在線幫助將其稱為進(jìn)程的工作集(盡管很多人稱之為駐留集)——當(dāng)前在主存中的頁(yè)面集。但是這個(gè)數(shù)值包含能夠和其他進(jìn)程共享的頁(yè)面,因此要注意避免重復(fù)計(jì)算。比方說(shuō),如果要計(jì)算共享同一個(gè) DLL 的兩個(gè)進(jìn)程的總內(nèi)存占用情況,不能簡(jiǎn)單地把“內(nèi)存使用”值相加。 Peak Mem Usage(內(nèi)存使用高峰值):進(jìn)程啟動(dòng)以來(lái) Mem Usage(內(nèi)存使用)字段的最大值。 Page Faults(頁(yè)面錯(cuò)誤):進(jìn)程啟動(dòng)以來(lái)要訪問(wèn)的頁(yè)面不在主存中的總次數(shù)。 VM Size(虛擬內(nèi)存大?。郝?lián)機(jī)幫助將其稱為“分配給進(jìn)程私有虛擬內(nèi)存總數(shù)?!备_切地說(shuō),這是進(jìn)程所 提交的內(nèi)存。如果進(jìn)程保留內(nèi)存而沒(méi)有提交,那么該值就與總地址空間的大小有很大的差別。 雖然 Windows 文檔將 Mem Usage(內(nèi)存使用)稱為工作集,但在該上下文中,它實(shí)際上指的是很多人所說(shuō)的駐留集(resident set),明白這一點(diǎn)很重要。您可以在 Memory Management Reference 術(shù)語(yǔ)表(請(qǐng)參閱 參考資料)中找到這些術(shù)語(yǔ)的定義。 工作集 更通常的含義指的是一個(gè)邏輯概念,即在某一點(diǎn)上為了避免分頁(yè)操作,進(jìn)程需要駐留在內(nèi)存中的那些頁(yè)面。 PerfMon 隨 Windows 一起提供的另一種 Microsoft 工具是 PerfMon,它監(jiān)控各種各樣的計(jì)數(shù)器,從打印隊(duì)列到電話。PerfMon 通常在系統(tǒng)路徑中,因此可以在命令行中輸入 perfmon 來(lái)啟動(dòng)它。這個(gè)工具的優(yōu)點(diǎn)是以圖形化的方式顯示計(jì)數(shù)器,很容易看到計(jì)數(shù)器隨時(shí)間的變化情況。 請(qǐng)?jiān)?PerfMon 窗口上方的工具欄中單擊 + 按鈕,這樣會(huì)打開(kāi)一個(gè)對(duì)話框讓您選擇要監(jiān)控的計(jì)數(shù)器,如圖 3a 所示。計(jì)數(shù)器按照 性能對(duì)象分成不同的類別。與內(nèi)存使用關(guān)系最密切的兩個(gè)類是 Memory 和 Process。選中計(jì)數(shù)器然后單擊 Explain 按鈕,就可以看到計(jì)數(shù)器的定義。說(shuō)明出現(xiàn)在主對(duì)話框下方彈出的單獨(dú)的窗口中。

用c語(yǔ)言 java 來(lái)獲取當(dāng)前(進(jìn)程)線程狀態(tài)

通過(guò)調(diào)用Thread.getState()方法獲取當(dāng)前線程的狀態(tài)。以下是我的代碼,可以直接編譯運(yùn)行。

public class Test {

public static void main(String[] args) {

new NewThread().start(); //啟動(dòng)線程

}

}

class NewThread extends Thread{

public NewThread() {

super("NewThread"); //定義當(dāng)前線程的名稱為NewThread

}

@Override

public void run() {

System.out.println("當(dāng)前線程:"+currentThread().getName()+"運(yùn)行狀態(tài)為:"+getState()); //打印線程的運(yùn)行狀態(tài)

}

}

Java示例:如何執(zhí)行進(jìn)程并讀取輸出

"; public static final String ERROR_MESSAGE = "程序執(zhí)行出錯(cuò):"; public static void main(String[] args) throws Exception { // 執(zhí)行程序 Process process = Runtime.getRuntime().exec(COMMAND); // 打印程序輸出 readProcessOutput(process); // 等待程序執(zhí)行結(jié)束并輸出狀態(tài) int exitCode = process.waitFor(); if (exitCode == SUCCESS) { System.out.println(SUCCESS_MESSAGE);} else {System.err.println(ERROR_MESSAGE + exitCode);}} /*** 打印進(jìn)程輸出** @param process 進(jìn)程*/private static void readProcessOutput(final Process process) { // 將進(jìn)程的正常輸出在 System.out 中打印,進(jìn)程的錯(cuò)誤輸出在 System.err 中打印 read(process.getInputStream(), System.out); read(process.getErrorStream(), System.err); } // 讀取輸入流

java判斷某個(gè)進(jìn)程是否在啟用

前段時(shí)間測(cè)試的時(shí)候發(fā)現(xiàn)客戶端,雙擊圖標(biāo)多次回生成多次XXX.exe.所以在啟動(dòng)時(shí)判斷一下時(shí)候有進(jìn)程已經(jīng)啟動(dòng)了,下面把代碼寫出來(lái)。 Java代碼 public boolean getProcess(){ boolean flag=false; try{ Process p = Runtime.getRuntime().exec( "cmd /c tasklist "); ByteArrayOutputStream baos = new ByteArrayOutputStream(); InputStream os = p.getInputStream(); byte b[] = new byte[256]; while(os.read(b) 0) baos.write(b); String s = baos.toString(); // System.out.println(s); if(s.indexOf( "Besttone.exe ")=0){ System.out.println( "yes "); flag=true; } else{ System.out.println( "no "); flag=false; } }catch(java.io.IOException ioe){ } return flag; }


分享名稱:進(jìn)程狀態(tài)實(shí)驗(yàn)Java代碼,如果用一個(gè)進(jìn)程來(lái)描述實(shí)驗(yàn)中的狀態(tài)機(jī),程序如何修改
文章路徑:http://weahome.cn/article/dsssjsp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部