příklad je tady
https://uloz.to/file/WOA8bpb0uCWm/os-producent-konzument-rar
je tam víc semestrálek je tam všechno co sme v daným semestru dělali na základy operačních systémů no je toho docela dost...
v Javě to teda nemám protože tenkdát Java eště neexistovala, je to samozřejmě v pascalu, assembleru a céčku, .. pascal je tam přiloženej :)
winrar je tady
https://uloz.to/file/9X9yxaUug/winrar-zip
tady máš VMWare ve kterým se to dá všechno spouštět
https://uloz.to/file/VNHCq13gWu1f/msdos-rar
stačí ksyž si stáhneš VMWare player v15 ten je zadara... do vmware se vše instaluje přes USB FDD floppy mechaniku !!!! protože je tam MSDOS 6.22, připojit USB disk uměl až MSDOS 7...
já bych to napsal tak, že bych na každý vlákno dynamicky vytvořil instanci "vhodné" třídy která bude obsahovat vlastní frontu a metody GET a PUT neboli READ a INSERT a CHECKQUEUE která ti vrací Boolean jestli je možné zapisovat nebo ne ... a producent pak nejprve spustí metodu CHECKQUEUE a pokdu vrátí TRUE tak se muže zapisovat další zpráva ... asi tak nějak .. .
no a co se týká Javy tak příkladů je plnej internet .. stačí do googlu zadat heslo "Java Producent Consument" a vyskočí ti spousta hotovejch řešení ... třeba tady je jedno
https://www.geeksforgeeks.org/producer-consumer-solution-using-threads-java/
a tady další ... a další ...
https://www.tutorialspoint.com/javaexamples/thread_procon.htm
takže v principu nechápu proč se vlastně ptáš ..