Code Monkey home page Code Monkey logo

mymashup's Introduction

myMashup

Aufgabe 2. Semester - HS Bremen - Prog2


Task

Schreiben Sie ein Java-Programm (Konsole) welches folgende Eigenschaften hat:

● Einlesen von 3 Argumenten beim Programmstart, das erste Argument ist die Anzahl der Produzenten, das zweite ist die Anzahl der Verbraucher, das dritte das 'sync' Argument (dazu später): myMashup 20 21 7

● Zu jeder Zeit kann das Programm über die Eingabe der magischen Zahl 666 beendet werden.

● Direkt nach Programmstart wird für jeden gewünschten Produzenten ein Thread gestartet. Achten Sie darauf wie Sie die Threads verwalten.

● Jeder Produzent produziert in seiner run() Methode ständig Instanzen von folgendem Objekt

class Candy { private int hell; private String hope; private int producerID; }

Die Attribute bekommen noch die entsprechenden Getter and Setter. Im Konstruktor von Candy sollen die Attribute hell und hope mit Zufallszahlen [-9999..9999] und Zufallszeichenketten mit einer Länge bis 20 Zeichen gefüllt werden, producerID ist klar.

● Die Instanzen von Candy werden in einem gemeinsamen Stack abgelegt.

● Nachdem alle Produzenten gestartet worden sind, werden die Verbraucher gestartet. Diese ziehen in ihrer run() Methode ständig eine Candy-Instanz vom gemeinsamen Stack und geben den Zustand der Attribute in der Konsole aus.

● Ist der Stack alle, gibt das Programm die Anzahl der insgesamt erzeugten CandyObjekte und die Laufzeit aus und beendet sich kontrolliert.

Ist das Argument 'sync' beim Programmstart >0, dann sollen sich die Verbraucher und Produzenten so synchronisieren, dass alle ungefähr gleich viel produzieren und verbrauchen und auf dem Stack immer 'sync' Candy-Objekte liegen.

mymashup's People

Contributors

fachinformatiker avatar web-flow avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.