Advertisement
Guest User

Untitled

a guest
Apr 23rd, 2019
168
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.22 KB | None | 0 0
  1. import java.lang.management.ManagementFactory;
  2. import java.lang.management.ThreadInfo;
  3. import java.lang.management.ThreadMXBean;
  4. import java.util.Arrays;
  5. import java.util.Timer;
  6. import java.util.TimerTask;
  7.  
  8. public class Monitor implements Runnable {
  9.     @Override
  10.     public void run() {
  11.         ThreadMXBean threadMX = ManagementFactory.getThreadMXBean();
  12.         ThreadInfo[] threadInfo = threadMX.getThreadInfo(threadMX.getAllThreadIds() );
  13.         Timer timer = new Timer();
  14.         timer.schedule(new TimerTask() {
  15.             @Override
  16.             public void run() {
  17.                 System.out.print("\033[H\033[2J");
  18.                 System.out.flush();
  19.                 Arrays.stream(threadInfo).forEach(info->
  20.                         System.out.println("ID: "+info.getThreadId()+" Name: "+ info.getThreadName()+" Status: "+info.getThreadState())
  21.                 );
  22.  
  23.                 System.out.println("\n----------------------------------------------------------------------------\n");
  24.             }
  25.         },0,2000);
  26.     }
  27. }
  28.  
  29. //--------------------------------------------------------------------------------------
  30.  
  31. import java.util.Random;
  32. import java.util.Timer;
  33.  
  34. public class MyRunnable implements Runnable {
  35.     @Override
  36.     public void run() {
  37.         int j = 0;
  38.  
  39.         while (true){
  40.             Random rand = new Random();
  41.             long startTime = System.currentTimeMillis();
  42.             while (System.currentTimeMillis()< startTime+3000){
  43.                j++;
  44.             }
  45.             try{
  46.                 int randTime = 100000;
  47.                 Thread.sleep(randTime);
  48.             }catch (InterruptedException ie) {
  49.                 ie.printStackTrace();
  50.                 Thread.currentThread().interrupt();
  51.             }
  52.  
  53.         }
  54.     }
  55. }
  56.  
  57. //---------------------------------------------------------------------
  58.  
  59. import java.util.Random;
  60.  
  61. public class Main {
  62.  
  63.     public static void main(String[] args) {
  64.         Random rnd = new Random();
  65.         for (int i=0;i<rnd.nextInt(5)+2;i++){
  66.             new Thread(new MyRunnable(),"\u001B[31m"+"Thread"+i+"\u001B[0m").start();
  67.         }
  68.         Thread monitorThread =  new Thread(new Monitor());
  69.         monitorThread.start();
  70.     }
  71. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement