Java

Come creare le annotazioni – Lezione 45 di Java Avanzato

Il meccanismo delle annotazioni, meglio conosciuto come Java Annotation, è stato introdotto a partire dalla versione di Java 1.5. Le annotazioni servono ad associare delle etichette al codice, ad un metodo, una classe o ad un campo. Il loro inserimento in Java ha avuto un’importanza considerevole, ha consentito di cambiare stile di programmazione introducendo la …

Come creare le annotazioni – Lezione 45 di Java Avanzato Leggi altro »

Il Java Memory Model – Lezione 44 di Java Avanzato

Il Java Memory Model è il meccanismo che rende indipendente l’esecuzione di un programma Java su qualsiasi macchina, ovvero rende indipendenti le regole di gestione dei programmi dall’architettura fisica sottostante. Introdotto a partire da Java 5, il JMM è stato sviluppato per sostituire il Memory Model, un vecchio insieme di regole che consentivano di eseguire …

Il Java Memory Model – Lezione 44 di Java Avanzato Leggi altro »

Le code bloccanti: BlockingQueue – Lezione 43 di Java Avanzato

L’interfaccia BlockingQueue sottoclasse di Queue L’interfaccia Queue rappresenta una generica coda, non necessariamente bloccante. Eredita da Collection molti metodi a cui aggiungere il metodo peek (da sbirciare) che restituisce il primo elemento contenuto nella coda (la coda non viene modificata). Queue viene estesa da BlockingQueue, questa classe rappresenta una generica coda bloccante in cui le …

Le code bloccanti: BlockingQueue – Lezione 43 di Java Avanzato Leggi altro »

I metodi wait, notify e notifyAll – Lezione 42 di Java Avanzato

Le condition variable: attesa attiva e passiva Le condition variable (variabili di condizione) sono un classico meccanismo di sincronizzazione tra thread che consente ai thread di attendere il verificarsi di una determinata condizione che altri thread renderanno vera. Ad esempio, supponiamo che dei thread condividono una variabile booleana flag. Un thread aspetta che la variabile …

I metodi wait, notify e notifyAll – Lezione 42 di Java Avanzato Leggi altro »

I Thread in Java – Lezione 39 di Java Avanzato

I thread sono flussi di esecuzione all’interno di un processo. Java è uno dei pochi linguaggi di programmazione che possiede un supporto nativo ai thread, ovvero che non bisogna importare librerie per rendere un programma multithreading. Per multithreading si intende la capacità dei programmi di eseguire, al loro interno, più task (thread) contemporaneamente.