Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package Dekker;
- public class PayOut extends Thread{
- private int sum=0;
- private int currentResources;
- @Override
- public void run() {
- long startTime = System.currentTimeMillis();
- while(System.currentTimeMillis()-startTime<30000) {
- System.out.println("Proces P1 jest po za sekcją krytyczną");
- sleepLong();
- System.out.println("Proces P1 chce wejść do sekcji krytycznej");
- MainDekker.t1W2Enter = true;
- while(MainDekker.t2W2Enter){
- if(MainDekker.favoredThread==2){
- MainDekker.t1W2Enter = false;
- while(MainDekker.favoredThread==2);
- MainDekker.t1W2Enter = true;
- }
- }
- System.out.println("Proces P1 jest w sekcji krytycznej");
- System.out.println("----------------------------------");
- //step();
- sleepLong();
- MainDekker.favoredThread = 2;
- MainDekker.t1W2Enter = false;
- }
- }
- private void step(){
- currentResources = MainDekker.RESOURCES;
- sleepShort();
- currentResources -= 100;
- MainDekker.RESOURCES = currentResources;
- sleepLong();
- sum -= 100;
- System.out.println("WYPŁATA 100zł - Stan konta: <" + MainDekker.RESOURCES + "> Wypłacone pieniądze: " + sum);
- }
- private void sleepShort(){
- try {
- Thread.sleep((long) (Math.random()*2001));
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- }
- private void sleepLong(){
- try {
- Thread.sleep((long) ((Math.random()*2001) + 2000));
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement