Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package Thread;
- class sharedResource {
- int count = 0;
- int value;
- String name;
- synchronized void display(String name, int value) {
- this.name = name;
- this.value = value;
- try {
- count += value;
- if (count < 80) {
- System.out.println("Name: " + name + " Count: " + count + " Value: " + value);
- }
- Thread.sleep(1000);
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
- }
- class Producer implements Runnable {
- sharedResource sharedResource;
- Thread t;
- String name;
- int value;
- Producer(sharedResource sharedResource, String name, int value) {
- this.sharedResource = sharedResource;
- this.name = name;
- this.value = value;
- t = new Thread(this);
- t.start();
- }
- @Override
- public void run() {
- t.setName(name);
- sharedResource.display(name, value);
- }
- }
- public class Main {
- public static void main(String args[]) {
- sharedResource sharedResource = new sharedResource();
- Producer ob1 = new Producer(sharedResource, "One", 24);
- Producer ob2 = new Producer(sharedResource, "Two", 22);
- Producer ob3 = new Producer(sharedResource, "Three", 7);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement