为什么以下代码打印值没有运行时间?

时间:2014-05-31 03:39:53

标签: java linux multithreading ubuntu memory-management

因为cat / proc / meminfo提供了动态细节,我想更新文本区域系统值的变化。我试过以下。但是没有用。请帮忙

Thread th=new Thread(new Runnable() {
public void run() {
while(true)
{
  try{
       p = Runtime.getRuntime().exec("cat /proc/meminfo");
         BufferedReader br = new BufferedReader(
                     new InputStreamReader(p.getInputStream()));
                 while ((s = br.readLine()) != null)
                 {
                     textArea.append(s+"\n");
                 }
                 p.waitFor();
                 p.destroy();
      }
      catch(Exception e)
      {

      }
 }
});     

1 个答案:

答案 0 :(得分:0)

据我所知,textArea没有做任何事情。要使用Java打印值,请使用System.out.println

您可以替换:

textArea.append(s+"\n");

使用:

System.out.print(s+"\n");

或者更简单:println会在文字后自动附加一个新行:

System.out.println(s);

另一个问题是readLine方法可能会挂起您的程序。如果是这种情况,请逐步调试。