Guest User

Untitled

a guest
Jul 1st, 2020
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.92 KB | None | 0 0
  1. package com.rs.utils;
  2.  
  3. public class NanotimeSleeper {
  4.  
  5.     private long aLong7735;
  6.     private long aLong7738;
  7.     private long aLong7734;
  8.     private int anInt7737;
  9.     private int anInt7736 = 1;
  10.  
  11.     long[] aLongArray7733 = new long[10];
  12.  
  13.     public NanotimeSleeper() {
  14.         aLong7738 = System.nanoTime();
  15.         aLong7734 = System.nanoTime();
  16.     }
  17.  
  18.     public long method4852() {
  19.         return aLong7738;
  20.     }
  21.  
  22.     public long getSleepTimeMs() {
  23.         aLong7738 += method12495();
  24.         return aLong7734 > aLong7738 ? (aLong7734 - aLong7738) / 1000000L : 0L;
  25.     }
  26.  
  27.     public int sleepNano(long nanoseconds) {
  28.         long sleepTime = getSleepTimeMs();
  29.         try {
  30.             if (sleepTime > 0L) {
  31.                 if (sleepTime % 10L == 0L) {
  32.                     Thread.sleep(sleepTime - 1L);
  33.                     Thread.sleep(1L);
  34.                 } else {
  35.                     Thread.sleep(sleepTime);
  36.                 }
  37.             }
  38.         } catch (InterruptedException e) {
  39.         }
  40.         return method4845(nanoseconds);
  41.     }
  42.  
  43.     public int method4845(long long_1) {
  44.         if (aLong7734 > aLong7738) {
  45.             aLong7735 += aLong7734 - aLong7738;
  46.             aLong7738 += aLong7734 - aLong7738;
  47.             aLong7734 += long_1;
  48.             return 1;
  49.         } else {
  50.             int ticksSkipped = 0;
  51.             do {
  52.                 ++ticksSkipped;
  53.                 aLong7734 += long_1;
  54.             } while (ticksSkipped < 10 && aLong7734 < aLong7738);
  55.             if (aLong7734 < aLong7738) {
  56.                 aLong7734 = aLong7738;
  57.             }
  58.             return ticksSkipped;
  59.         }
  60.     }
  61.  
  62.     public void method4853() {
  63.         aLong7735 = 0L;
  64.         if (aLong7734 > aLong7738) {
  65.             aLong7738 += aLong7734 - aLong7738;
  66.         }
  67.     }
  68.  
  69.     public long method12495() {
  70.         long currTime = System.nanoTime();
  71.         long elapsed = currTime - aLong7735;
  72.         aLong7735 = currTime;
  73.         if (elapsed > -5000000000L && elapsed < 5000000000L) {
  74.             aLongArray7733[anInt7737] = elapsed;
  75.             anInt7737 = (anInt7737 + 1) % 10;
  76.             if (anInt7736 < 1) {
  77.                 ++anInt7736;
  78.             }
  79.         }
  80.         long long_6 = 0L;
  81.         for (int i_8 = 1; i_8 <= anInt7736; i_8++) {
  82.             long_6 += aLongArray7733[(anInt7737 - i_8 + 10) % 10];
  83.         }
  84.         return long_6 / anInt7736;
  85.     }
  86. }
Advertisement
Add Comment
Please, Sign In to add comment